Giúp mình code dễ mà sao cứ có lỗi
code như này mà sao có lõi các bác, mình đang dùng CCS ver 4.102d
#include <16F877.h> #include <stdio.h> #use delay(clock = 20000000) #fuses HS,NOWDT,NOPROTECT,NOLVP #device PIC16F877*=16 ADC=8 #use rs232(baud=19200, parity=n, xmit=pin_C6, rcv=pin_C7) int8 adc; void main() { setup_ADC(ADC_CLOCK_INTERNAL); setup_ADC_ports(AN0); set_ADC_channel(0); delay_us(10); while(true) { adc=read_ADC(); output_B(adc); printf("gia tri adc la %u",adc); } } khi biên dịch thi được các thông báo lỗi sau: Error 23.. Line 5: can not change device type this far into the code Line 5: Expecting a ( Line 5: Expecting a declaration Line 5: Expecting a ( Line 5: Expecting a declaraton Vì mới tìm hiểu PIC được ít hôm nên mong được các bạn chi thêm. |
Lỗi khai báo ADC
Trích:
Theo như thông báo là rõ rồi còn gì! Bạn khai báo ADC sai. Code:
#device PIC16F877*=16 ADC=8 Code:
#device ADC*=8 |
Rất cảm ơn bạn, đúng là mới tìm hiểu nên chưa biết hết.
Bây giờ thì được rồi, mong tiếp tục nhận được sự giúp đỡ của các bạn |
Trích:
|
Phải đặt dòng
Code:
#device PIC16F877*=16 ADC=8 Code:
#include <16F877.h> |
dc rồi bạn ah, thks nhe
|
mình thì bị khác, mình để dòng #device ngay sau #include <16f877a.h> rồi, thì trong thư viện 16f877a.h báo lỗi y như vậy tại dòng #device PIC16F877A (cannot chang device type far into this code) chẳng biết phải làm sao. thư viện 16f877a của mình là:(lỗi tại dòng số 2)
//////// Standard Header file for the PIC16F877A device //////////////// #device PIC16F877A #nolist //////// Program memory: 8192x14 Data RAM: 367 Stack: 8 //////// I/O: 33 Analog Pins: 8 //////// Data EEPROM: 256 //////// C Scratch area: 77 ID Location: 2000 //////// Fuses: LP,XT,HS,RC,NOWDT,WDT,NOPUT,PUT,PROTECT,DEBUG,NODE BUG //////// Fuses: NOPROTECT,NOBROWNOUT,BROWNOUT,LVP,NOLVP,CPD,NOCPD, WRT_50% //////// Fuses: NOWRT,WRT_5%,WRT_25% //////// ////////////////////////////////////////////////////////////////// I/O // Discrete I/O Functions: SET_TRIS_x(), OUTPUT_x(), INPUT_x(), // PORT_x_PULLUPS(), INPUT(), // OUTPUT_LOW(), OUTPUT_HIGH(), // OUTPUT_FLOAT(), OUTPUT_BIT() // Constants used to identify pins in the above are: |
fixed thanks anyway
|
các bạn cho mình xin thư viện 16F877.h . mình tìm mãi không thấy
|
1 Attachment(s)
Trích:
gửi lun cho bạn file 16F877.h |
Mình cũng bị lỗi như bạn hoangtuan8911 ah
#device PIC16F876A (cannot change device type far into this code) Tuấn ơi cho mình hỏi bạn đã sữa lỗi như thế nào vậy. Cảm ơn bạn nhiều! |
bạn Tuấn post bài cách đây 1 năm rồi! khả năng reply là rất ít
|
Chào các bạn!
Mình đang tìm hiểu về pic 16f877a, mạch của mình có 1 nút nhấn (on/off) và 1 biến trở để điều khiển 1 led đơn giao tiếp với máy tính. Mình làm mạch rồi mà chưa biết lập trình như thế nào. Mong các bạn chỉ giúp cho mình về giải thuật với. |
Em chào các anh,em mới học pic16f877,em có viết 1 code đơn giản nhưng bị lỗi em chưa biết sửa cách nào,mọi người giúp em nha.
Đây là code của em #include "C:\Documents and Settings\Administrator\My Documents\b11\main adc.h" #device *=16 ADC=8 #use delay(clock=10000000) int adc_delay; void hieu_chinh() { adc_delay=read_adc (0); output_B(0); delay_ms(adc_delay); output_B(255); delay_ms(adc_delay); } void main() { setup_ adc_post(AN0_AN1_AN3); setup_ adc(adc_clock_internal); set_ adc_chennel(0); while(1) { hieu_chinh(); if(input(pin_C0)) { output_B(0); break; } } } em dung ccs complie lỗi sảy ra là Error 23.. Line 3(8,9): can not change device type this far into the code |
Múi giờ GMT. Hiện tại là 07:24 PM. |
Tên diễn đàn: vBulletin Version 3.8.11
Được sáng lập bởi Đoàn Hiệp.
Copyright © PIC Vietnam