Hi-Tech PIC và CCS C

Collapse
X
 
  • Giờ
  • Show
Clear All
new posts
  • linhnc308
    Moderator
    • Aug 2005
    • 1084

    #61
    Nguyên văn bởi nguoidumuc20 Xem bài viết
    Có ai làm về Realtime dùng Pic 16F877A , DS 1307 , Trình dịch CCS xem hộ mình đoạn code này .Sao mình làm mãi mà không được :
    Mình chỉ tạo modul : Tạo xung 1Hz trên chân SOUT

    Code:
    #use i2c(master, sda=PIN_C4, scl=PIN_C3)  // Configure Device as Master
    
    unsigned char i,value;
    
    void main(void)
    {
       i2c_start();
       i2c_write(0xD0);// Dinh dia chi cho slave
       value = i2c_isr_state();
       for(i=0;i<=7;i++)
       {  
          value++;
          if (value == 0x07)
             i2c_write(0x90);// Tao tan so 1Hz
       }
       i2c_stop();
       while(1)
       {
       }
    }
    Đoạn lệnh khởi tạo cho ds1307. Sau đoạn lệnh này thì ds1307 sẽ tạo dc xung 1Hz output.
    Code:
    void ds1307_init(void)
    {
       BYTE seconds = 0;
    
       i2c_start();
       i2c_write(0xD0);      // WR to RTC
       i2c_write(0x00);      // REG 0
       i2c_start();
       i2c_write(0xD1);      // RD from RTC
       seconds = bcd2bin(i2c_read(0)); // Read current "seconds" in DS1307
       i2c_stop();
       seconds &= 0x7F;
    
       delay_us(3);
    
       i2c_start();
       i2c_write(0xD0);      // WR to RTC
       i2c_write(0x00);      // REG 0
       i2c_write(bin2bcd(seconds));     // Start oscillator with current "seconds value
       i2c_start();
       i2c_write(0xD0);      // WR to RTC
       i2c_write(0x07);      // Control Register
       i2c_write(0x90);     // enable squarewave output pin
       i2c_stop();
    
    }
    Ethernet-RS232, PIC Webserver, RFID Reader
    CallerID, Cảnh báo BTS, ...
    0988006696
    linhnc308@gmail.com
    http://linhnc308.blogspot.com

    Comment

    • nod32
      Thành viên mới
      • Dec 2007
      • 11

      #62
      Mấy huynh cho hỏi ưu điểm của bộ nhớ flashso với bộ nhớ Rom va Eprom là gì ngoài khả năng nạp, xoá chương trinh nhiêù lần hơn.

      Comment

      • Zz_Bi_zZ
        Thành viên tích cực
        • Nov 2007
        • 766

        #63
        tốc độ ghi / xóa nhanh hơn nữa bạn ah ! thêm nữa là chỉ cần xóa với áp nhỏ >=5v

        Comment

        • ngocthai_th
          Thành viên mới
          • Sep 2007
          • 2

          #64
          em khong biet lam sao de hien thi duoc GLCD tu PIC viet bang CCSC.bac nao co the giup em duoc ko?

          Comment

          • cong1810
            Thành viên chính thức
            • Sep 2007
            • 66

            #65
            em khai báo chế độ power pwm cho pic18f4431.hoạt động ở chế độ independent.vậy mà khi set_power_pwm3_duty();cho các chân thì CCS C báo là undefined identify cho các chân 1,3,5. còn các chân 0,2,4 thì ok.vậy em phải khai báo thêm cho nó ở chỗ nào.
            các anh giúp với ạ!!

            Comment

            • cong1810
              Thành viên chính thức
              • Sep 2007
              • 66

              #66
              trong datasheet.chỉ có 1 thanh ghi duty cycle cho cả 2 chân pwm 0 và 1.vậy tức là trong chế độ independent 2 chân này xuất xung giống hệt nhau.ko biết em nói vậy có đúng ko!!
              Last edited by cong1810; 02-10-2008, 21:40.

              Comment

              • thuytrang87
                Thành viên mới
                • Mar 2008
                • 12

                #67
                chao cac bac!
                em moi vao nghe bat dau hoc píc6f877 nhung kho noi hoc duoc vai bua ah ma thay giao cho nhiem vu la dung pic 16f877 de dieu khien toc do dong co DC 12v. chay voi toc do 500Hz 1KHz 1.5 KHz 2Khz. Mong cac bac giup cho. em dang bi day. co tai lieu gi lien quan thi gui cho em voi. em chan thanh cam on!

                Comment

                • bac86_bk3i
                  Thành viên mới
                  • Nov 2007
                  • 13

                  #68
                  ai co key cua HI_tech ko cho minh voi?
                  thanks

                  Comment

                  • mosquito
                    Thành viên mới
                    • Nov 2007
                    • 14

                    #69
                    cho em hỏi : trong ccs khai báo byte const digit =0b00000011; và const unsigned char digit =0x03h, có gì khác nhau ; và 0b00000011 có nghĩa là gì

                    Comment

                    • linhnc308
                      Moderator
                      • Aug 2005
                      • 1084

                      #70
                      Nguyên văn bởi mosquito Xem bài viết
                      cho em hỏi : trong ccs khai báo byte const digit =0b00000011; và const unsigned char digit =0x03h, có gì khác nhau ; và 0b00000011 có nghĩa là gì
                      Cách 0x03h và 0b00000011 chỉ là 2 cách hiển thị khác nhau của dữ liệu, đều đại diện cho số 3.

                      0b00000011 là biểu diễn theo 8-bit, dạng nhị phân. Bạn dùng kiểu nào cũng được. Thường khi làm việc với các thanh ghi điều khiển của PIC (thanh ghi I/O, Timer, PWM ...)(không muốn dùng hàm sẵn trong CCS) thì sử dụng kiểu nhị phân như trên để cho dễ nhận biết khi thiết lập chế độ hoạt động.
                      Ethernet-RS232, PIC Webserver, RFID Reader
                      CallerID, Cảnh báo BTS, ...
                      0988006696
                      linhnc308@gmail.com
                      http://linhnc308.blogspot.com

                      Comment

                      • mosquito
                        Thành viên mới
                        • Nov 2007
                        • 14

                        #71
                        em thắc mắc ở chỗ có phải const unsigned char có phải chỉ dùng cho hệ thập lục phân không, bởi khi em khai báo const unsigned char digit=0b00000011, thì trình dịch ccs báo lỗi,mong anh chị chỉ giáo

                        Comment

                        • namqn
                          Thành viên tích cực
                          • Feb 2006
                          • 869

                          #72
                          Nguyên văn bởi mosquito Xem bài viết
                          em thắc mắc ở chỗ có phải const unsigned char có phải chỉ dùng cho hệ thập lục phân không, bởi khi em khai báo const unsigned char digit=0b00000011, thì trình dịch ccs báo lỗi,mong anh chị chỉ giáo
                          Bạn thử unsigned char const digit = 0b00000011 chưa? Tôi không dùng CCS C, chỉ đoán vậy khi nhìn cú pháp của các ví dụ trong tài liệu hướng dẫn của CCS C.

                          Thân,

                          Comment

                          • mosquito
                            Thành viên mới
                            • Nov 2007
                            • 14

                            #73
                            Em nhầm 1 chút xíu :byte const digit=0b00000011 thì trình dịch CCS báo lỗi,byte const digit=0x03h thì ổn , tại sao như vậy, mong anh chị trả lời giúp em?

                            Comment

                            • namqn
                              Thành viên tích cực
                              • Feb 2006
                              • 869

                              #74
                              Nguyên văn bởi mosquito Xem bài viết
                              Em nhầm 1 chút xíu :byte const digit=0b00000011 thì trình dịch CCS báo lỗi,byte const digit=0x03h thì ổn , tại sao như vậy, mong anh chị trả lời giúp em?
                              Bạn cho biết thông báo lỗi ra sao.

                              Thân,

                              Comment

                              • mosquito
                                Thành viên mới
                                • Nov 2007
                                • 14

                                #75
                                Cám ơn anh namqn nhiều, em đã sửa được lỗi trong trình dịch CCS, hy vọng lần sau anh vẫn sẽ hướng dẫn nhiệt tình cho những newbie như tụi em .

                                Thân

                                Comment

                                Về tác giả

                                Collapse

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

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

                                Collapse

                                Đang tải...