Nguyên văn bởi ngohaibac
Xem bài viết
Thông báo
Collapse
No announcement yet.
HƯỚNG DẪN LẬP TRÌNH KEIL C CHO 8051-[Chỉ dành post bài hướng dẫn]
Collapse
X
-
hic hic , chán quá, em chạy translate thì 0 lỗi, 0 warning , vậy mà build target lại ko được, báo lỗi như sau :
Build target 'Target 1'
linking...
*** ERROR L104: MULTIPLE PUBLIC DEFINITIONS
SYMBOL: W
MODULE: led_matrix_chu_chay_222.obj (LED_MATRIX_CHU_CHAY_222)
*** ERROR L104: MULTIPLE PUBLIC DEFINITIONS
SYMBOL: M
MODULE: led_matrix_chu_chay_222.obj (LED_MATRIX_CHU_CHAY_222)
*** WARNING L16: UNCALLED SEGMENT, IGNORED FOR OVERLAY PROCESS
SEGMENT: ?PR?_TRE_MS?LED_MATRIX_CHU_CHAY_222
*** WARNING L16: UNCALLED SEGMENT, IGNORED FOR OVERLAY PROCESS
SEGMENT: ?PR?Y?LED_MATRIX_CHU_CHAY_222
*** WARNING L16: UNCALLED SEGMENT, IGNORED FOR OVERLAY PROCESS
SEGMENT: ?PR?S?LED_MATRIX_CHU_CHAY_222
*** WARNING L16: UNCALLED SEGMENT, IGNORED FOR OVERLAY PROCESS
SEGMENT: ?PR?D?LED_MATRIX_CHU_CHAY_222
Program Size: data=65.0 xdata=0 code=900
Target not createdCung cấp Oscilocope , Inverter , Switching , DC power supply , AC millivolt meter ....
Comment
-
Bro đến từ Trung Hoa Dân Quốc à? Thế thì không biết ngõ Thông Phong là phải roài.Nguyên văn bởi chieng Xem bài viếtNgõ Thông Phong là ở đâu cơ, Nỉ chỉ dẫn tận tình đi. Tìm hoài không thấy. xìe xie (cảm ơn)
AVR đã quay trở lại: ATMEGA32: 66k, ATMEGA8A: 30k, ATMEGA48: 30k.
Xem thêm tại Online Store ---> Click here
Mob: 0982.083.106
Comment
-
Mấy cái Warning thì chỉ là bạn có viết hàm nhưng không dùng thôi. Còn cái Error có thể là do bạn viết lại một hàm đã có trong thư viện rồi. Nếu là lỗi này thì dùng từ khóa extern có thể giải quyết được.Nguyên văn bởi hiodong Xem bài viếthic hic , chán quá, em chạy translate thì 0 lỗi, 0 warning , vậy mà build target lại ko được, báo lỗi như sau :
Build target 'Target 1'
linking...
*** ERROR L104: MULTIPLE PUBLIC DEFINITIONS
SYMBOL: W
MODULE: led_matrix_chu_chay_222.obj (LED_MATRIX_CHU_CHAY_222)
*** ERROR L104: MULTIPLE PUBLIC DEFINITIONS
SYMBOL: M
MODULE: led_matrix_chu_chay_222.obj (LED_MATRIX_CHU_CHAY_222)
*** WARNING L16: UNCALLED SEGMENT, IGNORED FOR OVERLAY PROCESS
SEGMENT: ?PR?_TRE_MS?LED_MATRIX_CHU_CHAY_222
*** WARNING L16: UNCALLED SEGMENT, IGNORED FOR OVERLAY PROCESS
SEGMENT: ?PR?Y?LED_MATRIX_CHU_CHAY_222
*** WARNING L16: UNCALLED SEGMENT, IGNORED FOR OVERLAY PROCESS
SEGMENT: ?PR?S?LED_MATRIX_CHU_CHAY_222
*** WARNING L16: UNCALLED SEGMENT, IGNORED FOR OVERLAY PROCESS
SEGMENT: ?PR?D?LED_MATRIX_CHU_CHAY_222
Program Size: data=65.0 xdata=0 code=900
Target not created
Để có thể trả lời rõ hơn thì bạn có thể post toàn bộ code lên thì mới biết được.AVR đã quay trở lại: ATMEGA32: 66k, ATMEGA8A: 30k, ATMEGA48: 30k.
Xem thêm tại Online Store ---> Click here
Mob: 0982.083.106
Comment
-
Làm mạch bằng tay : nhà số 9, ngách 30, ngõ Thông Phong, đường Tôn Đức Thắng. HN.Nguyên văn bởi chieng Xem bài viếtNgõ Thông Phong là ở đâu cơ, Nỉ chỉ dẫn tận tình đi. Tìm hoài không thấy. xìe xie (cảm ơn)
Làm mạch bằng máy : ngõ 726, đường Láng.
Have fun .học tập, lao động và làm việc theo gương chủ tịch Hồ Chí Minh vĩ đại .
Comment
-
Lỗi: "ERROR L104: MULTIPLE PUBLIC DEFINITIONS" Là lỗi mà bạn khai bái public một hàm trong 2 module khác nhau. bạn dùng chức năng "Search te xt in file" của keil để tìm hàm hoặc biến co tên là W và M. Nếu trong ám thì tìm chữ M: và W:Nguyên văn bởi hiodong Xem bài viếthic hic , chán quá, em chạy translate thì 0 lỗi, 0 warning , vậy mà build target lại ko được, báo lỗi như sau :
Build target 'Target 1'
linking...
*** ERROR L104: MULTIPLE PUBLIC DEFINITIONS
SYMBOL: W
MODULE: led_matrix_chu_chay_222.obj (LED_MATRIX_CHU_CHAY_222)
*** ERROR L104: MULTIPLE PUBLIC DEFINITIONS
SYMBOL: M
MODULE: led_matrix_chu_chay_222.obj (LED_MATRIX_CHU_CHAY_222)
*** WARNING L16: UNCALLED SEGMENT, IGNORED FOR OVERLAY PROCESS
SEGMENT: ?PR?_TRE_MS?LED_MATRIX_CHU_CHAY_222
*** WARNING L16: UNCALLED SEGMENT, IGNORED FOR OVERLAY PROCESS
SEGMENT: ?PR?Y?LED_MATRIX_CHU_CHAY_222
*** WARNING L16: UNCALLED SEGMENT, IGNORED FOR OVERLAY PROCESS
SEGMENT: ?PR?S?LED_MATRIX_CHU_CHAY_222
*** WARNING L16: UNCALLED SEGMENT, IGNORED FOR OVERLAY PROCESS
SEGMENT: ?PR?D?LED_MATRIX_CHU_CHAY_222
Program Size: data=65.0 xdata=0 code=900
Target not created
Comment
-
Tài liệu Keil C Appnote mình đã upload lại tại đây:
http://www.esnips.com/web/8051Bac/
Các ban download bí kíp này về nhé.Technical sale at WT Microelectronics S'pore
Hỗ trợ dự án sử dụng các hãng Texas Instrument, STMicro, Freescale, Fairchild, International Rectifier, Ublox, Lumiled, Maxim
Liên hệ: 0915.560.511 hoặc ngo.haibac@wtmec.com
Comment
-
Bác NgoHaiBac viết tut về giao tiếp I2C cho EEPROM 24Cxx dùng 8951 bằng Keil-C nhé. Em có tham khảo trên diễn đàn rồi, một số đoạn code chưa hiểu nhưng vẫn copy nguyên vào biên dịch và thử nghiệm (code của bác QueDuong), test bằng Proteus cũng như mạch thật thì chạy k như mong muốn.
Test đơn giản là fill 24C02 ở address (i) bằng i (i=0-255) đó rồi đọc tuần tự ra lại, nó đều báo 255 cả.
--------
void delay1(unsigned char x)
{
unsigned int i;
for(i=0;i<x;i++);
}
void x24c02_init()
{
SCL=1;
SDA=1;
}
void start()
{
SDA=1;
SCL=1;
SDA=0;
SCL=0;
}
void stop()
{
SDA=0;
SCL=1;
SDA=1;
}
void writex(unsigned char j)
{
unsigned char i,temp;
temp=j;
for (i=0;i<8;i++){
temp=temp<<1;
SCL=0;
SDA=CY;
SCL=1;
}
SCL=0;
SDA=1;
}
unsigned char readx()
{
unsigned char i,j,k=0;
SCL=0;
SDA=1;
for (i=0;i<8;i++){
SCL=1;
if (SDA==1) j=1;
else j=0;
k=(k<<1)|j; SCL=0;
}
return(k);
}
void clock()
{
unsigned char i=0;
SCL=1;
while ((SDA==1)&&(i<255))i++;
SCL=0;
}
unsigned char x24c02_read(unsigned char address)
{
unsigned char i;
start(); writex(0xae); //oxae = write, chân A0 A1 A2 treo lên nguồn
clock(); writex(address);
clock(); start();
writex(0xaf); clock(); //oxaf = read
i=readx(); stop();
delay1(10);
return(i);
}
void x24c02_write(unsigned char address,unsigned char info)
{
EA=0;
start(); writex(0xae);
clock(); writex(address);
clock(); writex(info);
clock(); stop();
EA=1;
delay1(50);
}
//--------------------------------
//------ CHUONG TRINH CHINH ------
//--------------------------------
void main(void)
{
unsigned char i;
x24c02_init();
for(i=0; i<255; i++)
{x24c02_write(i,i);}
while(1)
{
for(i=0; i<255; i++)
{HienThi(x24c02_read(i));
Delay(1000);
}
}
}
Comment
-
Ra chợ giời mua cái USB-2-COM.Nguyên văn bởi chieng Xem bài viếtMình đang học lập trình Keil C cho 8051, nhưng do máy tính laptop của mình ko có cổng COM. Làm thế nào bây giờ, mình dùng mạch nạp bằng cổng USB thì khi muốn lập trình giao tiếp Cổng COM thì cũng chịu (RS232). Các bạn tư vấn cho mình với!AVR đã quay trở lại: ATMEGA32: 66k, ATMEGA8A: 30k, ATMEGA48: 30k.
Xem thêm tại Online Store ---> Click here
Mob: 0982.083.106
Comment
-
anh que dung oi cứu em vơi,em đang làm mạch đo tốc động cơ bằng phương pháp đo chu kỳ xung ở ngoài.Cụ thể là khi co xảy ra một ngắt thi minh cho timer chạy,nếu có sự tran thì tăng một biến, tớ nhờ các cậu chỉ giúp mình lấy giá trị của timer đếm được, giá tri của thanh ghi đếm số tràn,mụch đích là lấy 60 000 000/(giá trị của timer đếm được của một chu kỳ) chính là số vòng /phút.Minh đang viết băng C.mong anh giup đở.
Comment
-
[chào tất cả nhé,cho minh các bạn giup mình với.Minh đang làm mạch đo tốc động cơ bằng phương pháp đo chu kỳ xung ở ngoài.Cụ thể là khi co xảy ra một ngắt thi minh cho timer chạy,nếu có sự tran thì tăng một biến, tớ nhờ các cậu chỉ giúp mình lấy giá trị của timer đếm được, giá tri của thanh ghi đếm số tràn,mụch đích là lấy 60 000 000/(giá trị của timer đếm được của một chu kỳ) chính là số vòng /phút.Minh đang viết băng C.mong các cao thủ chỉ giáo.
Comment
Bài viết mới nhất
Collapse
-
bởi chinhnguyen9· Thí nghiệm 1 (Mạch boost, Vcc=12V, kích bằng dao động PƯM, duty 10%):
* Không có snubber + không tải: Xuất hiện hiện tượng dao động tắt dần tại cực D Mosfet (ringing). Hình 1 cho thấy trong chu kỳ đầu, điện áp spike lên tới hàng trăm V, điện...-
Channel: Hướng dẫn sử dụng diễn đàn
hôm nay, 09:16 -
-
bởi Nexus 6Pe dùng KiCad 9.0 và đã xuất được file PDF mạch in gòi bác...
-
Channel: Điện tử công suất
Hôm qua, 16:25 -
-
bởi bqvietBấm chuột vào các tệp sẽ bật ra chương trình tương ứng. Nên dùng bản KiCAD sau
https://kicad-downloads.s3.cern.ch/a...ll_version.exe-
Channel: Điện tử công suất
Hôm qua, 14:57 -
-
bởi Nexus 6Pe cài KiCAD 2012 khi mở ra nó chỉ hiện ntn...
-
Channel: Điện tử công suất
Hôm qua, 11:20 -
-
bởi bqvietThực tế bạn nào không tải được tệp nén thiết kế thì căn cứ theo ảnh sơ đồ mạch có thể vẽ lại sơ đồ bằng chương trình EDA nào đó rồi làm mạch được mà. Càng thêm quen thuộc với sơ đồ. Sau đó tùy ý chuyển sang TinySwitch-III hoặc TinySwitch-4.
-
Channel: Điện tử công suất
02-02-2026, 21:13 -
-
bởi Nexus 6PCó ai có bản in của mạch in không, cho em xin file để đi in với ạ
-
Channel: Điện tử công suất
02-02-2026, 14:37 -
-
bởi Nexus 6PLink hư rồi ạ, xin lại link của bản thiết kế cũ ạ...
-
Channel: Điện tử công suất
02-02-2026, 10:48 -
-
Trả lời cho Yêu thơ mê nhạc, mời các bác vào đây!bởi dinhthuong92Dạ, cảm ơn bác đã nghe qua và có lời khích lệ cháu ạ.
Thật lòng cháu không dám nhận hai danh hiệu Kỹ sư và Nhạc sĩ đâu ạ, vì phải thật hiểu sâu nắm vững cơ, chứ thực lực cháu đây chỉ là biết chút ít thôi à. Về phần...-
Channel: Tâm tình dân kỹ thuật
29-01-2026, 11:58 -
-
Trả lời cho Có mạch sạc nlmt nào có mppt không các bácbởi bqvietĐơn giản thì có trải nghiệm này
http://www.dientuvietnam.net/forums/...ch%C3%AA%CC%81
Chỉ phần cứng,...-
Channel: Điện tử công suất
27-01-2026, 21:32 -
-
Trả lời cho Có mạch sạc nlmt nào có mppt không các bácbởi Nexus 6Pphức tạp quá, nếu mà có mạch làm sẵn thì ngon, e dùng 2 tấm pv loại 18v 55w thôi bác
-
Channel: Điện tử công suất
26-01-2026, 08:52 -

Comment