Thông báo

Collapse
No announcement yet.

Rút gọn code,cần giúp đỡ

Collapse
X
 
  • Lọc
  • Giờ
  • Show
Clear All
new posts

  • Rút gọn code,cần giúp đỡ

    e đang lập trình con 12f675, các bác trong diễn đàn ai biết xem hộ và chỉ giáo cho e với. e muốn rút gọn tối thiểu cho nó, nhưng thử đi thử lại vẫn chưa ok.:-d mong mọi ngưởi giúp đỡ, code đây mọi người:


    #include <12F675.h>
    #device ADC=10
    #fuses INTRC_IO,NOWDT,NOPUT,NOPROTECT,NOCPD,NOMCLR
    #use delay(clock=4000000)
    #define GP0 PIN_A0
    #define GP1 PIN_A1
    #define GP2 PIN_A2
    #define GP3 PIN_A3_OFF
    #define GP4 PIN_A4
    #define GP5 PIN_A5
    void main()
    {
    int16 k,b,x,t;
    while(1){
    for(x=250;x>=20;x-=40){
    output_a(0x00);delay_ms(x);//tat het led
    output_a(0xff);delay_ms(x);//bat het led
    }
    for(x=150;x>=135;x-=1){
    for(k=1;k<0x40;k=k<<1){//dich trai1
    if(k==0x08){}
    else{
    output_a(k);delay_ms(x);
    }}}
    for(x=150;x>=140;x-=1){
    for(k=0x40; k>=0x01;k=k>>1){//dich phai1
    if(k==0x08)
    {}
    else{
    output_a(k);delay_ms(x);}
    }}
    for(x=150;x>=115;x-=5){
    for(k=1;k<0x40;k=k<<1){
    if(k==0x08){}
    else{
    output_a(k);delay_ms(x);
    }}
    for(k=0x40; k>=0x01;k=k>>1){//len xuong
    if(k==0x08)
    {}
    else{
    output_a(k);delay_ms(x);}
    }}
    for(x=300;x>=50;x-=30){
    b=0x00; //khai bao bien phai dat duoi for tren
    for(k=1;k<=0x20;k=k<<1){//don trai
    if(k==0x08){}
    else{
    b=b+k;output_a(b);delay_ms(x);
    }}
    t=0x00;//khai bao bien phai dat duoi for tren
    for(k=0x40; k>0x00; k=k>>1){//don phai(luon phien)
    if(k==0x08)
    {
    }
    else
    {
    output_a(k|t);delay_ms(x);t=t+k;}
    }}
    for(x=10;x<=200;x+=30){
    for(k=0x40; k>=0x01;k=k>>1){//dich phai
    if(k==0x08)
    {}
    else{
    output_a(k);delay_ms(x);}
    }}
    for(x=300;x>=100;x-=30){
    for(k=0x40,t=1; k>=0x01,t<0x40;k=k>>1,t=t<<1){// ngoai vao giua, giua ra
    if(k==0x08)
    {}
    else{
    output_a(k|t);delay_ms(x);
    }}}
    for(x=300;x>=30;x-=20){
    t=0xff;//khai bao bien phai dat duoi for tren
    for(k=0x40; k>0x00; k=k>>1){
    if(k==0x08)
    {
    }
    else
    {
    output_a(k|t);delay_ms(x);t=t+k;}
    }
    }
    for(x=50;x>=35;x-=1){
    t=0x01;//khai bao bien phai dat duoi for tren
    for(k=0x40; k>0x00; k=k>>1){
    if(k==0x08)
    {
    }
    else
    {
    output_a(k|t);delay_ms(x);t=t+k;}
    }
    }
    for(x=60;x>=40;x-=1){
    t=0x04;
    for(k=0x40; k>0x00; k=k>>1){//sang lan
    if(k==0x08)
    {
    }
    else
    {
    output_a(k|t);delay_ms(x);t=t+k;}
    }
    }
    for(x=200;x>=190;x-=1){//van co the long vong for thoi gian cho nhieu vong for con khac
    for(k=0x40,t=0x01,k>=0x04;t<=0x04;t<<=1){//ngoai vao va nguoc lai
    if(k==0x08)
    {}
    else{
    k>>=1;output_a(t|k);delay_ms(x);}}//tu ngoai vao giua//chu y gan k truoc output tranh truong hop tre o chan GP3
    for(k=0x04,t=0x04;k>=0x01,t<=0x40;k>>=1){
    if(k==0x08)
    {}
    else{
    t<<=1;output_a(k|t);delay_ms(x);}//tu giua ra_chu y phai gan t truoc output
    }}
    for(x=300;x>=280;x-=2){
    output_a(0x3c);delay_ms(x);
    output_a(0x00);delay_ms(x);
    output_a(0x07);delay_ms(x);
    output_a(0x00);delay_ms(x);
    }
    }
    }




    mà có ai biết sửa code này làm code cho pic2f59 thì sửa giùm e với nhé. thank mọi người trước.

Về tác giả

Collapse

kaka_hjtmjss Tìm hiểu thêm về kaka_hjtmjss

Bài viết mới nhất

Collapse

  • bqviet
    Trả lời cho Đấu tắt điện cho máy tính bảng
    bởi bqviet
    Bqv cáo lỗi vì chưa đủ khả năng diễn giải để người đọc hiểu. Người làm kỹ thuật sâu đôi khi như thế đó. Về việc nạp pin không vào dù cell mới, khả năng cái mạch quản lý đó đã hỏng - cũng chính là nguyên nhân đám cell cũ hỏng từ đầu.
    06-12-2025, 17:17
  • nguyendinhvan
    Trả lời cho Xin hỏi về mạch thu FM/AM trong catsette
    bởi nguyendinhvan
    Theo tôi, nó chỉ là cái Tuy- ê - nơ, hoặc là khối Trung Văn Tần, nó một phần trong cái Da đì ô thôi. Vì có thấy một chỗ có ba chân hàn, giiống như chân Cờ rít sờ tăng 455 ki nô hẹc. Còn khối Tuy ê nơ thì không nhìn thây cái Di ốt Va di cáp...
    05-12-2025, 19:59
  • afrendly
    Trả lời cho Đấu tắt điện cho máy tính bảng
    bởi afrendly
    Có vẻ ngoài hiểu biết của mình rồi. Cuối cùng mình quyết định tìm mua 2 pin trên Shopee, giá 200K thay vào. Tuy nhận pin được 1%, sạc mãi không vào nhưng cũng mở được máy lên. Vậy cũng tạm. Cảm ơn bạn đã hỗ trợ nhé....
    04-12-2025, 01:27
  • nick22
    Trả lời cho Máy điện châm ?
    bởi nick22
    Đúng như bạn nói, máy điện châm hiện nay trên thị trường đã khá đa dạng về mẫu mã, chức năng và giá thành.
    01-12-2025, 13:23
Đang tải...
X