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 Mạch nguồn đôi dùng 7812 và 7912bởi tmcodonThank bác nhá. Tìm mãi mới thấy. Giờ vọc đã xem sao...
-
Channel: Hỗ trợ học tập
hôm nay, 10:39 -
-
bởi tungdqEm cần tìm sơ đồ mạch một số Main máy tính đời cao như Asrock B560M-HDV, các cao nhân chỉ giúp với. Thank!
-
Channel: Các mạch điện ứng dụng
Hôm qua, 08:27 -
-
Trả lời cho Kiểm tra biến ápbởi lamvu0677nhân tiện cho mình hỏi thêm về cái phần test hipot (cao áp),là để kiểm tra độ bền cách điện giưa các cuộn dây,mà thấy thông số test thường ở mức 4kvac,vậy nếu mấy con fail đó xài bình thường vẫn dduocj phải không ạ,vì điện mình làm gì lên tới mức đó
-
Channel: Điện tử dành cho người mới bắt đầu
10-11-2024, 08:52 -
-
Trả lời cho Kiểm tra biến ápbởi lamvu0677máy đo số vòng thì cty có ,mà nó to quá,tưởng có máy nào gọn gọn bỏ túi được thì tiện hơn,vì đi lại nhiều...
-
Channel: Điện tử dành cho người mới bắt đầu
10-11-2024, 08:47 -
-
bởi tmcodonMình thấy diễn đàn có chuyên mục quảng cáo rồi mà. Bạn đóng góp để mở luồng riêng
-
Channel: Hướng dẫn sử dụng diễn đàn
09-11-2024, 13:36 -
-
bởi Nicole08Xin chào mọi người, tôi đã sử dụng Flashforge Inventor 2 được gần 5 năm và rất hài lòng với nó, nhưng tuần trước đã xảy ra sự cố. Có vẻ như động cơ bước đưa sợi in vào đầu nóng đã bị hỏng. Mọi thứ khác có vẻ ổn trên máy...
-
Channel: Điện tử dành cho người mới bắt đầu
09-11-2024, 12:55 -
Comment