anh newuser ah. em da đọc bài của bác về lâp trình về ché tạo đờng hồ dùng rtc nhưng em ko hiểu các chân mà bác chọn nối với selec,dec,..có tác dụng gì em mong bác giải thích rõ hộ em vì emcung đang làm về dề tai dấy bác có thể giải thích cho em dược ko? với lại em muốn thiết kế thêm các phím ấn để điều chỉnh thời gian tùy ý nhưng chưa lập trình được anh giúp em được ko?
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
-
Qua đây down tài liêu I2C nhé, cái này là tổng quan và áp dụng cho PIC, nhưn các loại VDK khác thì như nhau thôi.
Về CCS cho PIC:
http://www.picvietnam.com/forum//showthread.php?t=612
Về I2C:
http://www.picvietnam.com/forum/showthread.php?t=301
Có bài viết về I2C dùng CCS nhưng tôi chua tìm lại dc. nếu bạn cần thì gửi mail cho tôi rồi tôi send lại cho.
Chúc thành công!
linhnc308@yahoo.comEthernet-RS232, PIC Webserver, RFID Reader
CallerID, Cảnh báo BTS, ...
0988006696
linhnc308@gmail.com
http://linhnc308.blogspot.com
Comment
-
Anh NgoHaiBac ơi , qua forums em thấy anh hiểu biết rất rộng về mảng đề tài mà anh đã trả lời , theo sự hướng dẫn của anh , em đã download được phần mềm Keil C 8.02 nhưng để ***** theo địa chỉ anh hướng dẫn "Lic: http://www.mcubbs.net/bbs/uploadfile...1057467280.rar" em chẳng tìm thấy cái mình cần , anh có thể giúp em được không.
Thành thật cám ơn.Last edited by btram104; 04-12-2006, 10:24.
Comment
-
http://www.tailieuvietnam.net/downlo...aibac/Keil.zip
Em download file này vài giải nén vào ổ C:\ nhé. File này anh ***** rùi. Nên chạy bình thường.
Chúc bạn thành công.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
-
Chào các bạn, như đã hứa với các bạn gửi mail cho mình cũng như các bạn trong diễn đàn. Nay mình gửi các bạn mốt số file trong đĩa mà bọn www.keil.com cho mình nhé:
1/Các appnote của keil. Các bạn có khi chẳng cần đặt câu hỏi gì nữa khi có nó .
http://www.tailieuvietnam.net/downlo...%20Appnote.zip
(32.6 MB)
2/ File hướng dẫn debug trong Keil C.
http://www.tailieuvietnam.net/downlo...ibac/debug.zip
(34.6MB).
3/File hướng dẫn mô phỏng trong Keil C.
http://www.tailieuvietnam.net/downlo...c/simulate.zip
(28.7 MB)
4/Phần mềm Keil C 8.05 bản Full. Đã có hướng dẫn *****. Anh em xem ở các bài trước nhé.
http://www.tailieuvietnam.net/downlo...ac/C51v805.zip
Chúc các bạn thành công.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
-
Em là dân mới tập tành viết VXL , xin nhờ các anh chị giúp giùm em một việc như thế này , đây là đoạn code viết bằng assembler cho AT89C51 dùng cổng T0 P3.4 để đếm , nhưng nó chỉ đếm được 255 lần ghi trong TL0 mà TH0 chẳng thay đổi giá trị gì , em muốn đếm sự kiện bằng 16 bít thì phải làm sao , anh chị nào chỉ em với , cám ơn nhiều nhiều ... lắm.
; Counter.asm
org 0000h
setb T0
mov a, TMOD
anl a, #0f0h
orl a, #5 ; counter 0 mode 1
; --------------------------------------------------------
mov TMOD, a
setb TR0 ; counter 0 on
mov b, #0
mov a, b
mov P0, a
mov a, b
loop:
mov a, TL0 ; lay TL0 vao a
anl a, #255
xrl a, b ; so sanh gia tri dem
jz loop ; nhay neu bang
inc b ; tang b
anl b, #0Fh
mov a, b
mov P0, a ; chi thi ra cong P0
mov a, b ;
sjmp loop ; lap lai mai mai...
ENDLast edited by btram104; 21-12-2006, 10:01.
Comment
-
Chú này viết loằng ngoằng quá. Cụ thể toi hiển thị số đếm ra cổng P0 và P1 nhé.
org 0
setb P3.4 ;xac lap P3.4 la dau vao
mov a,TMOD ;doc TMOD vao A
anl a,#0F0H ;xoa 4 bit thap
orl a,#00000101B ;05H(xac lap timer0:mode 1(16 bit), counter
mov TMOD,a
mov TH0,#0 ;xoa counter0
mov TL0,#0
setb TR0 ;cho phep counter0 bat dau dem
loop:
mov P0,TL0 ;chuyen so dem byte thap ra P0
mov P1,TH0 ;chuyen so dem byte cao ra P1
jmp loop ;khi dem tran, tu dong quay ve 0 de dem len
Comment
-
Nguyên văn bởi pace100kCac anh oi em moi tim hieu ve VDK ho 89 (89s52), em co cau hoi the nay :
sau khi bien dich song bang kelvil roi thi lam the nao de nap vao cho no vay ???
mong duoc chi giao' .
89c thì dùng ezdownloader còn 89s thì dùng SPI pgm
đây là một dạng kit có tích hợp mạch nạp
SHARE KHO PHIM LỚN
Comment
-
Cháu nên vào luồng http://www.dientuvietnam.net/forums/...ead.php?t=2968Một bông hồng cho những ai đang còn mẹ,
Đang còn mẹ để lòng vui sướng hơn ..
Comment
-
Help! help! help! mọi người giúp mình cái ... gay go quá.
Mình có một đoạn code được viết bằng C và build thành hex nạp vào con 89C51 thì chạy ngon ơ, thế nhưng nạp vào 89C2051 (Đã chuyển thư viện trong KeilC, nội dung chương trình thì chỉ sử dụng port 1 và 3, sử dụng cả 2 timer) thì nó lại báo lỗi "Verify Failed at 0".
Chú ý rằng... mạch chắc là ko thể lỗi đc vì nạp thử file hex có sẵn trong chaokhun (cái mạch đồng hồ ấy) lại ko sao....
Không biết thiết lập thư viện có sai gì không? Mong mọi người giúp đỡ
Comment
-
Lỗi này là khi cậu include sai header file, nó báo là chưa khai báo các biến. Bạn phải
# include "regx51.h"
vì header file này đã định nghĩa địa chỉ của P1_0, ... thì bạn mới sử dụng được chứ nhỉ:d
Bạn cứ thử mở file regx51.h trong thư mục INC/Atmel/ của thư mục cài đặt ra xem sao sẽ hiểu ngay mà.
chúc bạn thành công.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
-
Mình chẳng biết chỗ nào dạy lập trình 8051 bằng C cả. Bạn cứ lên diễn đàn học hỏi down sách vở về mà đọc thôi. Còn chương trình mà bạn gửi lỗi thì bạn hãy đưa cả code của chương trình đó lên nhé k có sao mà biết được. Còn chương trình mà mình viết thì chạy ok mà.
Anh em nếu lên mạng không tiện mang theo quyển sách C51 Primer thì có một địa chỉ đọc nó trực tuyến dạng HTML ở đây:
http://www.esacademy.com/automation/docs/c51primer/
hoặc đây:
http://www.hitex.com/iuk/c51primer/c51primer.html
Tiếp theo, vừa học 8051 để thi vừa viết cho anh em luôn :d. Bài này mình viết về các vùng nhớ của 8051 để có cơ sở viết các bài tiếp theo.
Hình 1: Các không gian nhớ của 8051
1/Vùng nhớ Data
Trong CPU 8051 vùng nhớ đầu tiên là "DATA". Đó là vùng nhớ RAM on-chip. Bắt đầu từ D:0x00 đến D:0x7F (D chỉ rằng đây là vùng nhớ Data). Vùng RAM này có thể được dùng cho các biến chương trình. Đó là vùng nhớ có thể định được địa chỉ trực tiếp, vì thế có thể dùng các lệnh dạng như: "MOV A,x".
D:00 đến D:1F là 4 bank (bank 0 đến bank 3). Mỗi bank gồm 8 byte là địa chỉ của các thanh ghi R0 đến R7. Muốn sử dụng vùng nhớ này thì khai báo với từ khóa data
D:20 đến D:2F là vùng không gian có thể định địa chỉ bít được (bit addressable). Đó là sự khác biệt so với C chuẩn. Ví dụ một biến P ở địa chỉ D:0x21 thì bạn có thể truy nhập vào từng bít của nó như: P.0, P.1, P.3 , P.4,... trong ASM thì phải . Còn trong C bạn phải định nghĩa với từ khóa sbit. ví dụ:
Code:char bdata test; // khai báo biến test nằm trong vùng nhớ định được địa chỉ bit sbit sign = test^7; // biến dấu của test khai báo là bit thứ 7
Vùng nhớ trên 0x80 là vùng nhớ dành cho các thanh ghi đặc biệt (SFR). Đây là vùng nhớ thường định địa chỉ bằng tên như SYSCON. Các tên này bạn có thể thấy là nó khởi tạo bởi các thanh ghi trong header file (thử mở file regx51.h ra xem nó viết kí rì ). Nó không định nghĩa hết mà các địa chỉ không định nghĩa dùng cho các mục đích khác trong tương lai. Các bạn sẽ thấy là nó định nghĩa các thanh ghi với từ khóa sfr.
Ví dụ:
Code:sfr P1=0x90; // định nghĩa tên P1 là địa chỉ của port1
Đây chính là vùng nhớ tiếp theo của RAM nội với 8051 hay nói cách khác khi gắn thêm RAM thì vùng nhớ này chính là vùng RAM ngoài. Còn với 8052 với 256 byte RAM nội thì vùng nhớ này chính là vùng RAM nội.
Đây là vùng nhớ rất thích hợp dùng cho stack SP.
3/ Thứ 3 là vùng nhớ CODE segment là vùng nhớ trong ROM, bắt đầu từ địa chỉ 0 và nó được dành cho CODE chương trình. Nó bắt đầu từ C:0000 đến C:0FFFFh (65536 bytes). Vùng nhớ này được truy nhập qua bộ đếm chương trình (PC) đối với opcode và bởi DPRT cho dữ liệu (cả 2 thanh ghi này là các thanh ghi 16 bit).
Trong ROM chỉ có biến constant mới được đặt tại đây. Tuy nhiên, một vài bộ nhớ Flash có khả năng thay đổi dữ liệu trong CODE space. Một số loại mới cho phép ứng dụng có thể load các blocks của code thông qua giao diện ISP. Cái này có thể thấy ở dòng 89S hay ở PIC đó.
(còn tiếp nữa ở bài sau, giờ tớ phải đi học mấy cái, đang ôn thi mà .)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ài viết mới nhất
Collapse
-
Trả lời cho Công thức điện tửbởi mèomướpDạ thời thế giờ thay đổi theo hướng tích cực hơn rồi chú trung sĩ ạ. Kiến thức được chia sẻ ngày càng nhìu nên làm ăn gian dối ko còn dễ dàng như trước đâu ạ. Những thợ nhỏ rồi sẽ thành công nhân sản xuất đồ mới hết thay vì sửa chữa lặt vặt...
-
Channel: Tâm tình dân kỹ thuật
hôm nay, 21:21 -
-
Trả lời cho Xin hỏi về màn hình laptopbởi mèomướpDạ cùng chuẩn tín hiệu thì chắc chắn là nhận ạ. Vì bản chất oled hay lcd thì đều phải có mạch chuyển đổi trên thanh gỗ rồi chuyển sang những chip xử lý hàng nghìn chân gắn trên những tab mỏng dính rồi mới ra các điểm ảnh theo hàng...
-
Channel: Thiết bị điện tử cá nhân
hôm nay, 20:31 -
-
Trả lời cho Xin hỏi về màn hình laptopbởi yname11Ok , thanks bác đã chỉ...
-
Channel: Thiết bị điện tử cá nhân
hôm nay, 15:06 -
-
bởi nguyendinhvanSau bao năm nghiên cứu cái dtvn. Tôi phát hiện công thức này. Các anh em xem đúng bao nhiêu phần trăm nhé !
Chập thì thay. Cháy thì tháo
Làm thì láo. Báo thì hay
May thì khoe. Rủi thì bỏ
Thành tích nhỏ. Báo thành to
Làm cho có. Báo chi li
Sai cả li. Báo...-
Channel: Tâm tình dân kỹ thuật
hôm nay, 00:35 -
-
Trả lời cho Xin hỏi về màn hình laptopbởi yname11có chắc ko b, màn lcd phải có cao áp mới sáng, màn led thì ko có, ko có cáp chuyển đổi thì lắp thế nào đc ??...
-
Channel: Thiết bị điện tử cá nhân
Hôm qua, 22:31 -
-
Trả lời cho Xin hỏi về màn hình laptopbởi mèomướpDạ ý chú là màn oled ấy ạ. Cùng chuẩn lvds cùng độ phân giải thì cắm được ạ. Còn nó mà khác thì hơi khó vì oled các điểm ảnh nó tự phát sáng chứ ko dùng đèn nền như lcd. Cháu chỉ biết đến vậy thôi ạ. Chú muốn nghịch phải tự tìm hiểu kỹ trước khi mua thôi, khó mà ông thợ nào tư vấn vụ này...
-
Channel: Thiết bị điện tử cá nhân
Hôm qua, 22:14 -
-
Trả lời cho Tự làm máy đo Cuộn cảmbởi bacthoHay đấy bạn ạ. Đây có thể hiểu là máy đo cuộn dây. Tiện đây xin cho hỏi bạn có hiểu rõ về máy nạp rôm pcb 45 của hãng thiên minh không giúp mình cách cài fw của nó với vì mình vừa được anh bạn cho nhưng lại không biết cài fw nên chưa dùng được. Nếu có thể thì bạn giúp mình với...
-
Channel: Điện tử dành cho người mới bắt đầu
Hôm qua, 21:48 -
-
Trả lời cho Xin hỏi về màn hình laptopbởi yname11màn của mình là LCD , giờ m muốn mua màn LED để thay thế (ko muốn dùng màn LCD nữa) , lên muốn hỏi xem có cáp chuyển đổi nào có thể cắm đc màn LED vào ko , tất nhiên phải có cùng số chân pin với màn cũ rồi . VD: màn cũ là lcd mỏng , 40 pin...
-
Channel: Thiết bị điện tử cá nhân
Hôm qua, 21:43 -
-
Trả lời cho các bạn giúp mình về file HEX với!!!bởi bacthoBạn vào trang phuclanshop.com ,tìm đến góc kỹ thuật. Tác giả vương khánh hưng nói rất rõ về điều bạn tìm...
-
Channel: Vi điều khiển họ 8051
Hôm qua, 21:21 -
-
Trả lời cho Xin hỏi về màn hình laptopbởi mèomướpDạ màn hình lcd đều có thể lai cấy cho nhau được hết ạ. Các loại cáp, bo mạch chuyển đổi lvds rất nhìu, với dòng sony còn phải nhổ cả chip nhớ của main cũ đưa lên gỗ thì mới lắp sang máy khác đc, chưa kể các bệnh về màu... ngay cả...
-
Channel: Thiết bị điện tử cá nhân
Hôm qua, 20:43 -
Comment