Thiết kế bo mạch điều khiển nhiệt độ

Ngày nay, điều khiển tự động đã trở thành một nhu cầu không thể thiếu được. Dưới sự xuất hiện của nhưng học thuyết và những ứng dụng của đời sống hằng ngày thì điều khiển nó đang chi phối toàn bộ đời sống hằng ngày Điều khiển nhiệt độ chỉ là một ứng dụng nhỏ của điều khiển tự động và nó cũng đã có nhiều ứng dụng trong công nghiệp để điều khiển nhiệt độ ra cho phù hợp với nhiệt độ cần thiết đảm bảo tính chính xác của các khâu. Đồ án này ra đời nhằm mục đích cải thiện dễ sử dụng với giá thành rẻ, hiệu quả cao.

pdf52 trang | Chia sẻ: lvcdongnoi | Lượt xem: 2232 | Lượt tải: 2download
Bạn đang xem trước 20 trang tài liệu Thiết kế bo mạch điều khiển nhiệt độ, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
nhau, vaø do ñoù treân thò tröôøng cuõng coù nhieàu loaïi IC bieán ñoåi AD khaùc nhau (caùc phöông phaùp bieán ñoåi cuï theå coù theå tham khaûo ôû Digital Systems : principles and applications - Ronald J. Tocci - Prentice Hall). ICL 7109 laø boä bieán ñoåi AD 12 bit, bieán ñoåi theo phöông phaùp tích phaân hai ñoä doác, coäng vôùi caùc bit chæ cöïc tính, bit baùo quaù thang ño coù theå giao tieáp vôùi µP, µC theo hai caùch : a. Gheùp tröïc tieáp vaøo bus : thoâng qua chaân choïn chip, hai chaân cho pheùp xuaát byte cao, byte thaáp. b. Gheùp theo chuaån coâng nghieäp UART : ñöôïc öùng duïng trong truyeàn nhaän döõ lieäu töø xa, ngoõ ra ñöôïc bieán ñoåi vaø ñöa ñeán moät UART trong cheá ñoä baét tay, trao ñoåi döõ lieäu noái tieáp. ICL 7109 coù ñoä chính xaùc cao, ñoä troâi nhieät nhoû hôn 1µV/0C. Ñöôïc öùng duïng trong nhieàu trong nhöõng heä thoáng thu thaäp döõ lieäu do giaù thaønh thaáp, coâng suaát tieâu taùn vaø doøng phaân cöïc nhoû. Caùc ñaëc ñieåm chuû yeáu nhö sau : • Pha zero-integrator giuùp khoâi phuïc quaù taûi nhanh. • Loaïi boû voøng treã vaø nhieãu. • Caûi tieán khaû naêng laùi bus. • Ngoõ ra 3 traïng thaùi. • UART ôû cheá ñoä baét tay ñeå giao tieáp noái tieáp. • Coù saún nguoàn tham chieáu chuaån. • 30 laàn bieán ñoåi trong 1 giaây. • Khoái ñôn, coâng ngheä CMOS coù coâng suaát thaáp 1.Caáu taïo chaân : 25 U٦ icl ٧١٠٩ ١ ٢ ٣ ٤ ٥ ٦ ٧ ٨ ٩ ١٠ ١١ ١٢ ١٣ ١٤ ١٥ ١٦ ١٧ ١٨ ١٩ ٢٠ ٢١ ٢٢ ٢٣ ٢٥ ٢٦ ٢٧ ٢٨ ٢٩ ٣٠ ٣١ ٣٢ ٣٣ ٣٤ ٣٥ ٣٦ ٣٧ ٣٨ ٣٩ ٤٠ ٢٤ GND STATUS POL OR B١٢ B١١ B١٠ B٩ B٨ B٧ B٦ B٥ B٤ B٣ B٢ B١ TEST LBEN HBEN CE/LOAD MODE OSC IN OSC OUT BUF OSC OUT RUN/HOLD SEND V- REF OUT BUF AZ INT COMMON IN LO IN HI REF IN+ REF CAP+ REF CAP- REF IN- V+ OSC SEL Nguyenvanbientbd47@gmail.com 2.Moâ taû chöùc naêng cuûa caùc chaân : GND : ñaát. STATUS : ngoõ ra. Khi ôû möùc cao, boä bieán ñoåi ñang ôû trong pha integrate hoaëc pha de- integrate cho ñeán khi döõ lieäu ñöôïc choát. Khi ôû möùc thaáp, boä bieán ñoåi ñang ôû pha auto- zero hoaëc de-integrate sau khi döõ lieäu ñöôïc choát. POL : bit chæ cöïc tính (polarity), neáu ôû möùc cao, chæ ra raèng tín hieäu vaøo laø aùp döông. OR : bit chæ quaù thang (over-range), neáu ôû möùc cao, chæ ra raèng ngoõ vaøo ñaõ vöôït quaù giôùi haïn cho pheùp. B1÷B12 : ngoõ ra ba traïng thaùi, laø caùc bit döõ lieäu töông öùng. TEST : ngoõ vaøo, khi TEST = 1 thì ADC hoaït ñoäng bình thöôøng, TEST = 0 thì taát caû caùc bit döõ lieäu ra ñeàu ôû möùc cao, coøn khi khoâng keát noái thì caùc choát ngoõ ra boä ñeäm ñöôïc cho pheùp. Trong hoaït ñoäng bình thöôøng : noái TEST leân +5v. LBEN : ôû cheá ñoä tröïc tieáp (MODE = 0 vaø CE/LOAD = 0) thì LBEN laø ngoõ vaøo, khi ôû möùc tích cöïc seõ cho pheùp xuaát byte thaáp; ôû cheá ñoä baét tay (MODE = 1) thì LBEN laø ngoõ ra, coù chöùc naêng laø côø byte thaáp. HBEN : ôû cheá ñoä tröïc tieáp (MODE = 0 vaø CE/LOAD = 0) thì HBEN laø ngoõ vaøo, khi ôû möùc tích cöïc seõ cho pheùp xuaát byte cao; ôû cheá ñoä baét tay (MODE = 1) thì HBEN laø ngoõ ra, coù chöùc naêng laø côø byte cao. CE/LOAD : ôû cheá ñoä tröïc tieáp, laø ngoõ vaøo, khi tích cöïc seõ cho pheùp xuaát ra 12 bit döõ lieäu B1÷B12, POL, OR neáu LBEN, HBEN tích cöïc. Ôû cheá ñoä baét tay, laø ngoõ ra strobe. MODE : ngoõ vaøo, khi ôû möùc thaáp : ADC hoaït ñoäng ôû cheá ñoä tröïc tieáp, coøn khi ôû möùc cao : ADC hoaït ñoäng ôû cheá ñoä baét tay. OSC IN : ngoõ vaøo cuûa boä dao ñoäng. OSC OUT : ngoõ ra cuûa boä dao ñoäng. OSC SEL : ngoõ vaøo, duøng ñeå choïn boä dao ñoäng. ICL 7109 coù moät boä dao ñoäng vôùi 3 ngoõ, noù coù theå hoaït ñoäng vôùi boä dao ñoäng RC hay dao ñoäng thaïch anh, cuõng coù theå hoaït ñoäng vôùi nguoàn xung clock beân ngoaøi. Neáu chaân OSC SEL ñeå hôû (coù pullup keùo leân) hay noái vôùi möùc cao thì xung clock seõ laáy töø boä dao ñoäng RC beân ngoaøi. Khi ñoù, xung clock seõ cuøng pha, cuøng taàn soá vôùi tín hieäu treân chaân BUF OSC OUT vaø taàn soá xung clock tính theo coâng thöùc : RC f 45.0= Ñieän trôû neân choïn laø 100K, tuï choïn sao cho khoaûng thôøi gian cuûa 2048 chu kyø xung clock gaàn vôùi moät boäi soá tích phaân cuûa 50Hz ñeå loaïi tröø nhieãu 50Hz, nhöng khoâng neân nhoû hôn 50pF. Neáu chaân OSC SEL ñöôïc keùo xuoáng möùc thaáp thì xung clock laáy töø dao ñoäng thaïch anh beân ngoaøi coù taàn soá töø 1MHz ñeán 5MHz. Taàn soá xung clock beân trong khi ñoù seõ baèng taàn soá cuûa tín hieäu treân chaân BUF OSC OUT chia cho 58. BUF OSC OUT : ngoõ ra cuûa boä dao ñoäng ñöôïc ñeäm, tieän duïng laøm nguoàn xung clock cho caùc IC khaùc. RUN/HOLD : sau khi pha autozero hoaøn taát trong khoaûn thôøi gian nhoû nhaát, caàn coù moät xung leân cao ít nhaát 200ns taùc ñoäng vaøo chaân RUN/HOLD ñeå baét ñaàu moät quaù trình bieán ñoåi. Tuy nhieân caàn chuù yù raèng neáu coù baát kyø xung naøo xuaát hieän trong quaù trình 26 Nguyenvanbientbd47@gmail.com bieán ñoåi hay trong voøng 2048 chu kyø xung clock sau khi chaân STATUS xuoáng thaáp seõ bò boû qua. Neáu ICL 7109 ñang ôû vaøo thôøi ñieåm keát thuùc pha autozero, moät quaù trình bieán ñoåi seõ ñöôïc baét ñaàu vaø chaân STATUS seõ leân cao trong voøng 7 chu kyø xung clock sau khi RUN/HOLD leân cao. Theâm vaøo ñoù, ñeå baét ñaàu vaø keát thuùc moät quaù trình bieán ñoåi, chaân naøy cuõng coù theå ñöôïc söû duïng ñeå cöïc tieåu thôøi gian bieán ñoåi. Bôûi vì moät quaù trình bieán ñoåi bình thöôøng seõ toán maát 8192 chu kyø xung clock, trong ñoù rieâng pha de-integrate ñaõ laáy maát 4096 chu kyø xung clock vaø ñoäc laäp vôùi ñieän aùp vaøo. Nhöng neáu sau khi STATUS xuoáng thaáp, RUN/HOLD xuoáng thaáp theo thì ICL 7109 seõ nhaûy töùc thôøi ñeán pha autozero hôn laø phaûi maát toaøn boä 4096 chu kyø xung clock cho pha de-integrate. SEND : ngoõ vaøo, baùo hieäu raèng thieát bò beân ngoaøi ñaõ chaáp nhaän döõ lieäu khi ADC hoaït ñoäng ôû cheá ñoä baét tay. Noái leân +5v neáu khoâng söû duïng. V- : nguoàn aâm cho ICL 7109, thöôøng noái ñeán -5v. REF OUT : ngoõ ra ñieän aùp tham chieáu, thöôøng nhoû hôn V+ laø 2,8v. BUF : ngoõ ra boä khueách ñaïi ñeäm. AZ : ñöôïc noái ñeán tuï CAZ. INT : ñöôïc noái ñeán tuï CINT. COMMON : chaân chung cuûa tín hieäu töông töï. IN LO : cöïc aâm cuûa ñieän aùp vaøo vi sai. IN HI : cöïc döông cuûa ñieän aùp vaøo vi sai. REF IN+ : ngoõ vaøo döông cuûa ñieän aùp tham chieáu. REF CAP+ : cöïc döông cuûa tuï tham chieáu. REF CAP- : cöïc aâm cuûa tuï tham chieáu. REF IN- : ngoõ vaøo aâm cuûa ñieän aùp tham chieáu. V+ : Vcc (5v). 3.Quaù trình bieán ñoåi AD : Quaù trình bieán ñoåi AD cuûa ICL 7109 ñöôïc chia laøm 4 pha nhö sau : 27 Nguyenvanbientbd47@gmail.com Autozero : coù 3 söï kieän xaûy ra trong thôøi gian naøy. Caùc ngoõ vaøo IN LO vaø IN HI khoâng ñöôïc noái ñeán tín hieäu beân ngoaøi maø noái taét ñeán chaân COMMON. Tuï tham chieáu ñöôïc naïp ñeán ñieän aùp tham chieáu. Vaø sau ñoù laø moät voøng hoài tieáp ñöôïc noái voøng qua heä thoáng ñeå ñeå naïp tuï CAZ nhaèm buø vôùi ñieän aùp leäch trong boä so saùnh, boä khueách ñaïi ñeäm vaø boä laáy tích phaân. Nhieãu voán coù trong heä thoáng seõ quyeát ñònh ñoä chính xaùc cuûa pha naøy, nhöng ñoä leäch ngoõ vaøo luoân nhoû hôn 10µV. Signal Integrate : caùc ngoõ vaøo IN LO vaø IN HI ñöôïc noái ñeán tín hieäu beân ngoaøi (noái taét beân trong khoâng coøn vaø voøng hoài tieáp ñöôïc ñeå hôû ra). Khi ñoù boä bieán ñoåi seõ laáy tích phaân ñieän aùp vi sai giöõa IN HI vaø IN LO trong moät khoaûng thôøi gian nhaát ñònh laø 2048 chu kyø xung clock. Chuù yù raèng ñieän aùp vi sai phaûi naèm trong taàm cuûa ngoõ vaøo vaø cöïc tính cuûa tín hieäu ñöôïc xaùc ñònh ôû cuoái pha naøy. De-Integrate : ngoõ IN HI vaø IN LO laïi ngaét khoûi tín hieäu beân ngoaøi. Thay vaøo ñoù, IN HI ñöôïc noái ñeán tuï tham chieáu (ñaõ naïp ñieän aùp tham chieáu) vaø IN LO ñöôïc noái ñeán COMMON. Maïch seõ töï ñoäng xaùc ñònh cöïc tính cuûa ñieän aùp vi sai ñeå suy ra IN HI phaûi noái ñeán cöïc naøo cuûa tuï tham chieáu sao cho ngoõ ra cuûa boä tích phaân traû veà möùc zero (ñaõ thieát laäp trong pha autozero) vôùi moät ñoä doác coá ñònh. Do ñoù thôøi gian caàn thieát ñeå ngoõ ra naøy traû veà zero seõ tyû leä vôùi tín hieäu aùp vaøo. Zero Integrate : IN LO ñöôïc noái ñeán COMMON vaø tuï tham chieáu ñöôïc naïp ñeán ñieän aùp tham chieáu. Voøng hoài tieáp ñöôïc noái quanh heä thoáng ñeán IN HI ñeå xaû ngoõ ra veà zero moät caùch nhanh choùng. Pha naøy thöôøng laáy maát töø 16 ñeán 32 chu kyø xung clock nhöng coù theå leân ñeán 1552 xung clock neáu coù xaûy ra quaù thang ño. Nhieäm vuï cuûa pha naøy laø laáy ñi baát kyø ñieän aùp naøo coøn soùt laïi treân tuï tích phaân sau khi coù quaù taûi cuõng nhö loaïi boû nhieãu giöõa caùc keânh khaùc nhau cuûa ICL 7109. 4.Löïa choïn caùc giaù trò : Ñieän trôû tích phaân (RINT) : trôû tích phaân phaûi coù giaù trò ñuû nhoû ñeå traùnh söï roø ræ khoâng mong muoán, nhöng cuõng phaûi ñuû lôùn ñeå giöõ cho doøng ngoõ ra khoâng vöôït quaù 40µA. giaù trò toái öu laø 100K khi ngoõ vaøo toaøn taàm laø 2,048V vaø 20K khi ngoõ vaøo toaøn taàm laø 409,6mV. Vôùi giaù trò ñieän aùp toaøn taàm khaùc, coù theå choïn R INT theo coâng thöùc sau : ][ )(20 )( Ω= K V mVV R FSINT µ Tuï tích phaân (CINT) : neân choïn sao cho bieân ñoä aùp ra cöïc ñaïi khoâng bò baõo hoøa, thöôøng laø 0.15µF khi taàn soá xung clock laø 61,44KHz. Neáu taàn soá xung clock coù giaù trò khaùc thì CINT ñöôïc tính theo coâng thöùc : ][ )(______ )20).(2048( F Vphantichboraapdobien AfC INT µ µ = Ñeå ngaên ngöøa sai soá voøng vaø sai soá tuyeán tính, neân choïn tuï coù dung moâi haáp tuï thaáp. Tuï autozero (CAZ) : giaù trò cuûa C AZ naèm trong khoaûng töø 2 ñeán 4 laàn giaù trò cuûa C INT, lôùn hôn seõ laøm cho maát nhieàu thôøi gian naïp, coøn nhoû hôn thì laïi gia taêng nhieãu trong voøng autozero. Tuï tham chieáu : giaù trò laø 1µF cho haàu heát caùc öùng duïng. 28 Nguyenvanbientbd47@gmail.com Aùp tham chieáu : moät tín hieäu vaøo Vin = 2.VRef seõ taïo ôû ngoõ ra moät giaù trò ñaày thang sau 4096 laàn ñeám. Thöôøng söû duïng 204,8mV cho giaù trò toaøn taàm laø 409,6mV (100µV/LSB) vaø 1,024V cho giaù trò toaøn taàm laø 2,048V (500µV/LSB). 5.Giao tieáp tröïc tieáp vôùi ICL 7109 : CE/LOAD LBEN HBEN B1÷B8 B9÷B12, OR, POL 1 0 0 0 0 X 1 0 1 0 X 1 1 0 0 Hi-Z Hi-Z Data Out Hi-Z Data Out Hi-Z Hi-Z Hi-Z Data Out Data Out Thoâng tin chi tieát hôn veà ICL 7109 coù theå load veà töø ñòa chæ 209.1.238.250/arpdf/1354.pdf IV.Chuaån RS-232-C : Trong kyõ thuaät truyeàn döõ lieäu giöõa caùc heä thoáng vôùi nhau, ngöôøi ta coù theå phaân loaïi 2 caùch truyeàn : song song hay noái tieáp. Nhöng do caùch truyeàn song song raát deã bò nhieãu taùc ñoäng neân khoâng theå truyeàn ñi xa ñöôïc, do ñoù cuõng ít ñöôïc söû duïng. Truyeàn noái tieáp cuõng coù 2 loaïi : ñoàng boä hay khoâng ñoàng boä. Trong caùch truyeàn ñoàng boä, daõy kyù töï ñöôïc truyeàn seõ keøm theo kyù töï ñoàng boä laø SYN (maõ ASCII laø 22). Phöông thöùc naøy cho toác ñoä truyeàn khaù cao nhöng do maïch xöû lyù truyeàn vaø nhaän (bao goàm maïch theâm kyù töï ñoàng boä, phaùt hieän vaø baùo sai…) khaù phöùc taïp neân chæ duøng trong caùc öùng duïng coù yeâu caàu cao veà toác ñoä truyeàn. Coøn trong caùc öùng duïng thoâng thöôøng, nhaát laø caùc öùng duïng trong lónh vöïc ñieàu khieån töï ñoäng, thì khoâng coù yeâu caàu veà toác ñoä maø yeâu caàu veà ñoä tin caäy nhöng maïch thöïc hieän ñôn giaûn, reû tieàn. Khi ñoù, caùch truyeàn khoâng ñoàng boä raát phuø hôïp. Theo caùch truyeàn naøy thì caùc kyù töï ñöôïc truyeàn rieâng reõ, phaân laøm töøng frame coù bit baét ñaàu, caùc bit döõ lieäu cuûa kyù töï caàn truyeàn, bit chaün leûõ (ñeå kieåm tra loãi ñöôøng truyeàn), vaø caùc bit keát thuùc. Chuaån RS-232-C (do EIA ñöa ra) laø moät trong nhöõng phöông thöùc truyeàn noái tieáp khoâng ñoàng boä. Theo chuaån naøy thì vieäc truyeàn thoâng ñöôïc thöïc hieän ngay taïi choã baèng caùch truyeàn vaø nhaän moät chuoãi caùc xung ñieän aùp lieân tuïc töông öùng vôùi caùc bit. Döõ lieäu ôû möùc TTL ñöôïc bieán ñoåi sang caùc möùc ñieän aùp nhö sau : möùc 1 laø töø -3V ñeán -15V (tieâu chuaån laø -12V), vaø möùc 0 laø töø +3V ñeán +15V (tieâu chuaån laø +12V). Ta thaáy raèng vieäc truyeàn vaø nhaän caùc möùc ñieän aùp nhö vaäy ñöôïc thöïc hieän raát ñôn giaûn. Chính vì vaäy maø chuaån RS-232-C ñaõ trôû thaønh giao dieän phoå bieán roäng raõi nhaát, ñöôïc trang bò haàu heát treân caùc maùy tính nhö laø moät trong nhöõng thaønh phaàn caáu thaønh neân heä thoáng. Caùc thuaät ngöõ coù lieân quan ñeán giao thöùc truyeàn thoâng RS-232-C : • Chu kyø truyeàn döõ lieäu : toác ñoä truyeàn döõ lieäu ñöôïc tính baèng bit/giaây, nhöng ñeå phaân bieät vôùi caùch truyeàn ñoàng boä, ngöôøi ta söû duïng ñôn vò baud (töông öùng bit/giaây trong thôøi gian coù döõ lieäu truyeàn) ñeå töôûng nhôù ñeán nhaø phaùt minh vaø khoa hoïc Phaùp theá kyû 19 laø J. M. E. Baudot . • Traïng thaùi ñaùnh daáu : laø khoaûng thôøi gian khoâng coù döõ lieäu truyeàn. Trong suoát thôøi gian naøy, thieát bò phaùt seõ giöõ ñöôøng truyeàn ôû möùc cao. • Bit baét ñaàu : moät bit thaáp cho bieát vieäc truyeàn döõ lieäu seõ baét ñaàu. 29 Nguyenvanbientbd47@gmail.com • Caùc bit kyù töï : laø doøng döõ lieäu goàm 5, 6, 7, hay 8 bit maõ hoùa kyù töï ñöôïc truyeàn. Bit coù troïng soá thaáp nhaát (LSB) laø bit ñaàu tieân ñöôïc truyeàn. • Bit chaün leû : laø moät bit tuøy choïn (coù theå coù hay khoâng), ñöôïc phaùt ñi sau caùc bit kyù töï duøng ñeå kieåm tra caùc loãi truyeàn döõ lieäu. Trong cheá ñoä kieåm tra tính chaün, thieát bò phaùt seõ baät 1 hay xoùa veà 0 bit chaün leû ñeå tính toång caùc bit 1 cuûa kyù töï ñöôïc truyeàn vaø bit chaün leû laø moät soá chaün. Coøn trong cheá ñoä kieåm tra tính leû, bit chaün leû thöïc hieän tính toång caùc bit 1 phaûi laø moät soá leû. • Caùc bit keát thuùc : moät hay nhieàu bit cao ñöôïc cheøn trong doøng truyeàn ñeå baùo vieäc keát thuùc truyeàn moät kyù töï, cuõng nhö cho thieát bò nhaän coù ñuû thôøi gian chuaån bò ñeå saún saøng cho vieäc nhaän kyù töï keá tieáp. Hình thí duï veà moät kyù töï ñöôïc truyeàn theo frame goàm : 1 bit baét ñaàu, 8 bit döõ lieäu, 1 bit chaün leû, 1 bit keát thuùc. Trong giao thöùc RS-232-C, caùc tham soá truyeàn vaø nhaän ñöôïc choïn töø moät mieàn caùc giaù trò chuaån. Sau ñaây laø caùc thoâng soá phoå bieán nhaát trong caùc maùy vi tính IBM : • Toác ñoä truyeàn : 50, 110, 300, 600, 1200, 2400, 4800, 9600, 19200. • Bit döõ lieäu : 5, 6, 7, hay 8. • Bit chaün leû : chaün, leû, khoâng kieåm tra. • Bit keát thuùc : 1, 1,5 hay 2. Caùc ñaàu noái : Theo chuaån RS-232-C, ñaàu noái phaàn cöùng xaùc ñònh vôùi 25 chaân, goïi laø chaân caém D-Shell hay DB-25. Nhöng khoâng phaûi taát caû coång noái tieáp ñeàu söû duïng ñaàu noái DB-25. Moät soá maùy tính nhö PCjr duøng chaân caém BERG 16 chaân, maùy PC AT thì söû duïng chaân caém D-Shell 9 chaân. Caùc ñaàu noái thoâng duïng treân maùy tính 30 -12V +12V 1 0 0 0 0 0 01 1 1 1 1 1 1 1 1 Bit chaün leû (tuøy choïn) Bit keát thuùc Traïng thaùi ñaùnh daáu Bit thaáp tröôùc Bit cao sau 8 bit döõ lieäu 11001001 B Bit baét ñaàu (möùc 0) Traïng thaùi ñaùnh daáu (möùc 1) ١ ١٣ ١٤ ٢٥ ١ ٥ ٦ ٩ A١ A٨ B١ B٨ DB-٢٥ DB-٩ -pin BERG١٦ Nguyenvanbientbd47@gmail.com Ñaàu noái DB-25 DB-9 BERG Chöùc naêng Teân Höôùng 1 B2 Ñaát GND 2 3 A4 Truyeàn döõ lieäu TXD Xuaát 3 2 A8 Nhaän döõ lieäu RXD Nhaäp 4 7 A3 Yeâu caàu göûi RTS Xuaát 5 8 A7 Xoùa vieäc göûi CTS Nhaäp 6 6 A6 Döõ lieäu saün saøng DSR Nhaäp 7 5 B1 Noái ñaát voû maùy GND 8 1 A5 Doø soùng mang DCD 20 4 A2 Terminal saün saøng DTR Xuaát 22 9 Boä chæ thò voøng RI Nhaäp V.MAXIM 232 vaø hoï IC duøng cho bieán ñoåi TTL ⇔ RS-232-C : Hoï IC töø MAX220-MAX249 ñöôïc saûn xuaát cho truyeàn thoâng EIA/TIA-232E vaø V.28/V.24, cuï theå laø cho nhöõng öùng duïng maø khoâng coù saün ñieän aùp ±12V. Hoï IC naøy ñaëc bieät thích hôïp cho nhöõng heä thoáng duøng pin coù coâng suaát thaáp, do chuùng coù cheá ñoä haï nguoàn laøm giaûm coâng suaát tieâu taùn xuoáng döôùi 5µW. MAX225, MAX233, MAX235, MAX245-MAX247 khoâng caàn caùc linh kieän phuï beân ngoaøi, ñöôïc duøng cho nhöõng nôi tieát kieäm khoâng gian. Caùc ñaëc ñieåm chính : • Nguoàn cung caáp +5V (MAX231/MAX239 duøng nguoàn +5V vaø +12V). • Haï nguoàn coâng suaát thaáp nhöng vaãn coù theå nhaän (MAX223/MAX242). • Hoã trôï chuaãn EIA/TIA-232E vaø V.28 • Nhieàu boä nhaän vaø phaùt. • Phaùt hieän ñöùt maïch ñöôøng truyeàn (MAX243). 1.Caáu taïo chaân : 31 MAX٢٣٢ ١٣ ٨ ١١ ١٠ ١ ٣ ٤ ٥ ٢ ٦ ١٢ ٩ ١٤ ٧ ١٦ ١٥ R١IN R٢IN T١IN T٢IN C+ C١- C٢+ C٢- V+ V- R١OUT R٢OUT T١OUT T٢OUT VCC GND Nguyenvanbientbd47@gmail.com 2.Sô ñoà khoái : 32 +٥V +٥V +٥V +٥V ٤٠٠K ٤٠٠K ٥K ٥K +١٠uF +١٠uF +١٠uF +١٠uF T١ T٢ R١ R٢ GND ١٥ R IN٢ R IN١ T OUT١ T OUT٢ T IN١ T IN٢ R OUT١ R OUT٢ C +١ C -١ C +٢ C -٢ VCC V+ V- ١٦ ١ ٣ ٤ ٥ ٢ ٦ TTL/CMOS INPUT TTL/CMOS OUTPUT ١١ ١٠ ١٢ ٩ ١٤ ١٣ ٧ ٨ RS-٢٣٢ INPUT RS-٢٣٢ OUTPUT BIEÁN ÑOÅI ÑIEÄN AÙP - V ñeán + V١٢ ١٢ Nguyenvanbientbd47@gmail.com 3.Moâ taû chöùc naêng chaân : Ta thaáy raèng MAX232 caàn coù 4 tuï maéc ngoaøi ñeå bieán ñoåi ñieän aùp töø 0V ñeán 5V thaønh -12V ñeán +12V phuø hôïp cho truyeàn thoâng theo chuaån RS-232. ngoaøi ra coù 4 boä khueách ñaïi ñaûo nhaèm chuyeån töø möùc TTL ra chuaån RS-232. (Treân internet, coù theå load taøi lieäu veà töø ñòa chæ 33 Nguyenvanbientbd47@gmail.com CHÖÔNG 3 : PHAÀN THIEÁT KEÁ BOARD MAÏCH  I.Caáu truùc toång quaùt : Board maïch ñöôïc thieát keá nhaèm muïc ñích ñieàu khieån loø nung daân duïng coù coâng suaát döôùi 3000W. coù theå chia ra laøm 9 khoái nhö sau : • Khoái xöû lyù trung taâm : vi ñieàu khieån AT89C52. • Khoái baøn phím :16 phím tieän duïng ñeå nhaäp caùc thoâng soá hoaït ñoäng, chöùc naêng cuûa töøng phím cuï theå ñöôïc qui ñònh bôûi phaàn meàm ñieàu khieån . • Khoái caûm bieán vaø gia coâng : duøng caûm bieán nhieät ñoä laø loaïi caëp nhieät ñieän, maïch gia coâng goàm coù maïch khueách ñaïi, maïch buø nhieät ñoä moâi tröôøng, vaø maïch chænh 0V khi nhieät ñoä laø 00C. • Khoái bieán ñoåi AD : ICL 7109 coù khaû naêng bieán ñoåi 12 bit, cung caáp 4096 möùc. • Khoái coâng suaát : coù khaû naêng ñieàu khieån ñoái töôïng duøng ñieän aùp 220V, 16A (ñaây laø giaù trò lôùn nhaát). • Khoái boä nhôù : RAM 8KB. • Khoái hieån thò : 5 led 7 ñoaïn coù khaû naêng hieån thò traïng thaùi cuûa heä thoáng cho ngöôøi duøng. • Khoái giao tieáp vôùi maùy tính : duøng MAX232, coù theå giao tieáp vôùi maùy tính trong cheá ñoä baét tay hay khoâng. • Khoái nguoàn backup : cung caáp nguoàn nuoâi cho RAM khi maát ñieän nhaèm muïc ñích baûo toaøn döõ lieäu. (Ngoaøi ra coøn coù theå keå theâm khoái giaûi maõ ñòa chæ cho caùc vuøng nhôù trong maïch, nhöng ñöùng veà phöông dieän ngöôøi duøng thì noù khoâng coù yù nghóa). Sô ñoà khoái moâ taû board maïch II.Khoái xöû lyù trung taâm : 34 Xöû lyù trung taâm Caûm bieán vaø gia coâng Bieán ñoåi AD Khoái baøn phím RAM (8 Kbyte) Nguoàn backup Giao tieáp maùy tính Hieån thò traïng thaùi Maïch coâng suaát Nguyenvanbientbd47@gmail.com Ñaây laø khoái ñoùng vai troø trung taâm, chòu traùch nhieäm veà taát caû caùc hoaït ñoäng cuûa maïch. Board maïch cung caáp moät phöông tieän ñeå coù theå ñieàu khieån theo baát cöù phöông phaùp naøo ñaõ keå treân, mieãn laø coù giaûi thuaät vaø vieát chöông trình naïp cho AT89C52. Sô ñoà maïch nhö sau : Ñöùng ôû trung taâm laø vi ñieàu khieån AT89C52. Sôõ dó duøng AT89C52 maø khoâng duøng caùc IC khaùc trong hoï MCS-51 laø vì IC naøy coù 3 timer 16-bit, phuø hôïp cho hoaït doäng ñieàu khieån nhö : moät timer cung caáp xung ñeå taïo baudrate cho truyeàn thoâng noái tieáp RS-232, moät timer ñeám thôøi gian thöïc, moät timer taïo caùc khoaûng thôøi gian treã tieän duïng cho laäp trình. • Chaân EA ñöôïc noái ñeán moät jumper cho pheùp tuøy choïn noái leân +5V hay noái xuoáng ñaát, ñieàu naøy töông öùng vôùi vieäc AT89C52 seõ thöïc thi chöông trình beân trong hay chöông trình beân ngoaøi. • Boä dao ñoäng goàm thaïch anh X1 vaø 2 tuï C1, C2 ñöôïc noái ñeán chaân X1 vaø X2. Xung clock cho caùc hoaït ñoäng beân trong cuûa AT89C52 seõ coù taàn soá baèng taàn soá cuûa thaïch anh chia cho 12. Thoâng thöôøng, ngöôøi ta hay duøng thaïch anh 12MHz ñeå taàn soá xung clock laø 1MHz, töông öùng vôùi moät chu kyø maùy toán 1ms ⇒ raát deã taïo moät timer thôøi gian thöïc chính xaùc. Tuy nhieân trong maïch laïi duøng thaïch anh 11.059MHz laø ñeå taïo baudrate chính xaùc. Hoaït ñoäng taïo baudrate coù theå giaûi thích nhö sau : ñoái vôùi hoï MCS-51, ngöôøi ta phaûi duøng moät timer (thöôøng laø timer1) vaø toác ñoä traøn cuûa noù seõ taïo ra baudrate. Khi ñoù, ta coù coâng thöùc sau : BAUDRATE = TOÁC ÑOÄ TRAØN TIMER1 ÷ 12 Ví duï, giaû söû ta muoán coù toác ñoä 1200 baud thì tính nhö sau : 1200 = toác ñoä traøn timer1 ÷ 12 ⇒ toác ñoä traøn timer1 = 1200x32 = 38.4KHz Neáu thaïch anh coù taàn soá 12MHz thì timer1 ñöôïc clock vôùi taàn soá 1MHz hay 1000KHz. Ñeå coù toác ñoä traøn laø 38.4KHz thì timer1 phaûi traøn sau moãi 1000 ÷ 35 +٥V +٥V +٥V +٥V AD٠ AD١ AD٢ AD٣ AD٤ AD٥ AD٦ AD٧ AD٠ AD١ AD٢ AD٣ AD٤ AD٥ AD٦ AD٧ A٨ A٩ A١٠ A١١ A١٢ A١٣ A١٤ A١٥ A٠ A١ A٢ A٣ A٤ A٥ A٦ A٧ /RD /WR /PSEN TXD RXD S١ S٢ POWER RUN /CS٠ /CS٢ /CS٣ /CS٤ /CS٥ /CS٦ /CS٧ /CS١ A١٣ A١٤ A١٥ U١ AT٨٩C٥٢ ٣١ ١٩ ١٨ ٩ ١٢ ١٣ ١٤ ١٥ ١ ٢ ٣ ٤ ٥ ٦ ٧ ٨ ٣٩ ٣٨ ٣٧ ٣٦ ٣٥ ٣٤ ٣٣ ٣٢ ٢١ ٢٢ ٢٣ ٢٤ ٢٥ ٢٦ ٢٧ ٢٨ ١٧ ١٦ ٢٩ ٣٠ ١١ ١٠ EA/VP X١ X٢ RESET INT٠ INT١ T٠ T١ P١.٠ P١.١ P١.٢ P١.٣ P١.٤ P١.٥ P١.٦ P١.٧ P٠.٠ P٠.١ P٠.٢ P٠.٣ P٠.٤ P٠.٥ P٠.٦ P٠.٧ P٢.٠ P٢.١ P٢.٢ P٢.٣ P٢.٤ P٢.٥ P٢.٦ P٢.٧ RD WR PSEN ALE/P TXD RXD U٢ ٧٤HCT٥٧٣ ٢ ٣ ٤ ٥ ٦ ٧ ٨ ٩ ١١ ١ ١٩ ١٨ ١٧ ١٦ ١٥ ١٤ ١٣ ١٢ D١ D٢ D٣ D٤ D٥ D٦ D٧ D٨ C OC Q١ Q٢ Q٣ Q٤ Q٥ Q٦ Q٧ Q٨ J١ IN/EXT C٢ ٣٠p C١ ٣٠p X١ ١١.٠٥٩MHz R١ ١٠٠ R٢ ٨.٢K + C٣ ١٠uF SW١ RESET U٣ ٧٤LS١٣٨ ١ ٢ ٣ ٦ ٤ ٥ ١٥ ١٤ ١٣ ١٢ ١١ ١٠ ٩ ٧ A B C G١ G٢A G٢B Y٠ Y١ Y٢ Y٣ Y٤ Y٥ Y٦ Y٧ ADDRESS LOW/DATA BUS ADDRESS BUS HEXADECIMAL KEYPAD Nguyenvanbientbd47@gmail.com 38.4 = 26.04 xung clock (laøm troøn laø 26). Do timer ñeám leân vaø seõ traøn khi chuyeån töø FFh sang 00h, caàn phaûi naïp soá -26 vaøo timer vaø theá laø baudrate ñöôïc taïo ra. Nhö ta ñaõ thaáy, trong pheùp tính treân coù laøm troøn, ñieàu naøy daãn ñeán sai soá trong baudrate taïo ra. Töø ñoù ta caàn phaûi tìm thaïch anh coù taàn soá sau cho baudrate taïo ra khoâng coù sai soá ñeå vieäc truyeàn thoâng ñaûm baûo chính xaùc. Qua caùc pheùp tính thì thaïch anh 11.059MHz cho baudrate raát chính xaùc. Baûng sau seõ cho thaáy söï so saùnh sai soá khi duøng thaïch anh 12MHz vaø thaïch anh 11.059MHz trong moät soá baudrate thoâng duïng : BAUDRATE TAÀN SOÁ THAÏCH ANH SMOD GIAÙ TRÒ NAÏP BAUDRATE THÖÏC SÖÏ SAI SOÁ 9600 2400 1200 19200 9600 2400 1200 12.000MHz 12.000MHz 12.000MHz 11.059MHz 11.059MHz 11.059MHz 11.059MHz 1 0 0 1 0 0 0 -7(F9H) -13(F3H) -26(E6H) -3(FDH) -3(FDH) -12(F4H) -24(E8H) 8923 2404 1202 19200 9600 2400 1200 7% 0.16% 0.16% 0 0 0 0 (Neáu SMOD = 1 thì baudrate = toác ñoä traøn timer1 ÷ 16) • Maïch reset goàm C3, R2 cho taùc vuï auto-reset (reset khi môùi caáp nguoàn). Ngoaøi ra coøn coù R1 vaø SW1 cho taùc vuï manual-reset (reset baèng tay khi aán phím SW1 baát cöù khi naøo). • Chaân P3.2 (INT0) duøng ñeå ñieàu khieån maïch coâng suaát (POWER), khi chaân naøy ôû möùc 1 thì loø nung ñöôïc caáp ñieän. • Chaân P3.3 (INT1) taïo tín hieäu khôûi ñoäng boä bieán ñoåi AD (tín hieäu RUN). • Chaân RXD vaø TXD laø caùc chaân nhaän vaø truyeàn trong truyeàn thoâng noái tieáp. Hôn nöõa duøng hai chaân P3.4 (T0), P3.5 (T1) cho baét tay (neáu caàn). • Port1 daønh rieâng cho 16 phím trong khoái baøn phím. • Do duøng caùc thieát bò ngoaïi vi neân Port0 vaø Port2 duøng trong cheá ñoä ñòa chæ vaø döõ lieäu : Port0 vöøa laø byte thaáp cuûa ñòa chæ, vöøa laø byte döõ lieäu (AD0÷AD7). Port2 laø byte cao cuûa ñòa chæ (A8÷A15). Ta xem giaûn ñoà xung sau : 36 ÑÒA CHÆ DÖÕ LIEÄU A -A٨ ١٥ AD -AD٠ ٧ ALE ÑÒA CHÆ CHU KYØ NHÔÙ Nguyenvanbientbd47@gmail.com Nhö vaäy, khi truy xuaát döõ lieäu beân ngoaøi thì ñaàu tieân treân Port0 seõ laø byte thaáp cuûa ñòa chæ, ALE seõ taùc ñoäng caïnh xuoáng khi caùc giaù trò ñaõ oån ñònh ⇒ luùc naøy caàn moät IC ñeå choát caùc giaù trò naøy laïi thoâng qua taùc ñoäng cuûa ALE ⇒ duøng IC 74HCT573, ALE noái ñeán chaân C. Sau ñoù, giaù trò treân Port0 seõ laø döõ lieäu (nhaäp hay xuaát tuøy theo read hay write thoâng qua taùc ñoäng cuûa chaân RD hay WR, chaân PSEN thay theá vai troø cuûa chaân RD khi ñoïc chöông trình ngoaøi). Giaù trò treân Port2 luoân laø byte cao cuûa ñòa chæ. Sau khi qua IC 74HCT573 laø ta ñaõ coù 8-bit döõ lieäu vaø 16-bit ñòa chæ. Baây giôø ta baét ñaàu phaân vuøng ñòa chæ cho caùc thieát bò ngoaïi vi. Tuyeán ñòa chæ coù 16-bit coù theå ñònh ra vuøng nhôù ñeán 64KB, vaø ta chia ra laøm 8 vuøng 8KB thoâng qua IC 74LS138 cho caùc thieát bò nhö sau : Vuøng ñòa chæ Tín hieäu choïn Thieát bò ngoaïi vi 0000H÷1FFFH CS0 RAM 8KB (IC HM6264). 2000H÷3FFFH CS1 AD byte thaáp. 4000H÷5FFFH CS2 AD byte cao. 6000H÷7FFFH CS3 LED 7 ñoaïn haøng ñôn vò. 8000H÷9FFFH CS4 LED 7 ñoaïn haøng chuïc. A000H÷BFFFH CS5 LED 7 ñoaïn haøng traêm. C000H÷DFFFH CS6 LED 7 ñoaïn haøng ngaøn. E000H÷FFFFH CS7 LED 7 ñoaïn haøng chuïc ngaøn. (Löu yù raèng tín hieäu choïn chip tích cöïc möùc thaáp, tuøy theo thieát bò ngoaïi vi maø phoái hôïp coång logic cho phuø hôïp). III.Khoái boä nhôù vaø nguoàn backup : Boä nhôù duøng RAM 8KB (HM6264) coù hai chöùc naêng : trong quaù trình vieát vaø chaïy thöû chöông trình, caùch ñôn giaûn vaø kinh teá nhaát laø taûi chöông trình töø maùy tính vaøo RAM vaø sau ñoù cho vi ñieàu khieån thöïc thi chöông trình treân treân RAM (chöông trình ngoaøi ⇒ EA = 0). Caùch naøy raát thuaän tieän bôûi vì trong quaù trình phaùt trieån moät phaàn meàm, khoâng bao giôø ngöôøi ta coù theå vieát ñuùng ngay töø laàn vieát chöông trình ñaàu tieân, maø laø moät quaù trình vieát-kieåm tra-söûa sai vaø coù theå laëp laïi raát nhieàu laàn. Neáu nhö ta naïp chöông trình tröïc tieáp cho vi ñieàu khieån thì phaûi naïp nhieàu laàn ⇒ toán tieàn vaø aûnh höôûng ñeán tuoåi thoï cuûa vi ñieàu khieån. Chöùc naêng thöù hai laø moät khi ñieàu khieån thì ta phaûi xöû lyù döõ lieäu, vaø do ñoù caàn phaûi coù nôi löu tröõ döõ lieäu. Nhö vaäy RAM vöøa laø boä nhôù chöông trình ngoaøi, vöøa laø boä nhôù döõ lieäu ngoaøi neân tín hieäu choïn RAM laø söï keát hôïp cuûa 3 tín hieäu : tín hieäu choïn vuøng ñòa chæ (CS0), tín hieäu ñoïc chöông trình ngoaøi (PSEN), vaø tín hieäu ñoïc döõ lieäu ngoaøi (RD) cho thao taùc ñoïc; hay laø söï keát hôïp cuûa 2 tín hieäu : tín hieäu choïn vuøng ñòa chæ (CS0), tín hieäu ghi (WR) cho thao taùc ghi. 37 Nguyenvanbientbd47@gmail.com Moãi khi naïp xong chöông trình cho RAM, ta taét ñieän vaø chuyeån vi ñieàu khieån sang cheá ñoä ñoïc chöông trình beân ngoaøi laøm daãn ñeán maát chöông trình treân RAM. Hay ñeå löu döõ lieäu khi maát ñieän ñoät ngoät, ta caàn ñeán 1 nguoàn backup cung caáp ñieän cho RAM. Sô ñoà maïch nhö sau : Tín hieäu choïn vuøng CS0 seõ laø tín hieäu choïn chip neân ñöôïc noái ñeán chaân CS1 cuûa RAM, chaân CS2 cuûa RAM cho noái leân möùc tích cöïc +5V. Tín hieäu ghi WR ñöôïc noái tröïc tieáp ñeán WE cuûa RAM. Do coù hai tín hieäu ñoïc laø PSEN vaø RD (khoâng coù taùc ñoäng ñoàng thôøi) neân chuùng ñöôïc noái ñeán coång AND hình thaønh bôûi ñieän trôû R4 vaø hai diode D1, D2. Diode D3, D4, D5, ñieän trôû R3, pin BT1 (pin saïc 3.6V) taïo neân nguoàn backup. Khi coù ñieän cung caáp cho maïch thì D4 daãn cung caáp +5V cho RAM, ñoàng thôøi D3 daãn neân pin ñöôïc saïc ñieän. Khi khoâng coù ñieän nguoàn thì D5 daãn, RAM ñöôïc caáp ñieän 3.6V. Tuï C4 duøng ñeå choáng xuaát hieän xung nhieãu khi xaûy ra chuyeån nguoàn cung caáp. Diode D3, D4, D5 neân choïn loaïi germani coù aùp Vγ nhoû, côõ 0.2V. IV.Khoái caûm bieán vaø gia coâng : Caûm bieán nhieät duøng caëp nhieät ñieän loaïi K coù ñoä nhaïy laø 40µV/0C, khaù tuyeán tính trong vuøng töø 00C ÷ 5000C. Maïch gia coâng caàn thöïc hieän 3 chöùc naêng sau : buø nhieät cho ñaàu töï do, khueách ñaïi, vaø taïo ñieän aùp ra laø 0V khi ño ôû 00C. Ta xeùt maïch sau : • U5,U6,U7 ñoùng vai troø moät boä ñeäm ñieän aùp lyù töôûng : coù trôû khaùng vaøo raát lôùn vaø trôû khaùng ra raát nhoû. • Ñieän aùp ra treân caëp nhieät ñieän : V3 = S(Td - Ta) = STd - STa Vôùi : Td laø nhieät ñoä caàn ño. Ta laø nhieät ñoä moâi tröôøng. S laø ñoä nhaïy cuûa caëp nhieät ñieän (40µV/0C). 38 +٥V +٥V +٥V /RD /PSEN /WR /CS٠ A٠ A١ A٢ A٣ A٤ A٥ A٦ A٧ A٨ A٩ A١٠ A١١ A١٢ D٠ D١ D٢ D٣ D٤ D٥ D٦ D٧ D٤ ١ ٢ D١ ١N٤٠٠٧ ١٢ BT١ ٣.٦V D٥ ١ + C٤ ١٠uF D٢ ١N٤٠٠٧ ١٢ R٤ ٤.٧K U٤ HM٦٢٦٤A ١٠ ٩ ٨ ٧ ٦ ٥ ٤ ٣ ٢٥ ٢٤ ٢١ ٢٣ ٢ ٢٠ ٢٦ ٢٢ ٢٧ ١١ ١٢ ١٣ ١٥ ١٦ ١٧ ١٨ ١٩ ٢٨ ١٤ A٠ A١ A٢ A٣ A٤ A٥ A٦ A٧ A٨ A٩ A١٠ A١١ A١٢ CS١ CS٢ OE WE D٠ D١ D٢ D٣ D٤ D٥ D٦ D٧ V C C G N D D٣ ١ ٢ R٣ ٣٣٠ DATA BUS ADDRESS BUS Nguyenvanbientbd47@gmail.com Nhö vaäy laø giaù trò ñieän aùp ra treân caëp nhieät ñieän ngoaøi nhieäm vuï mang thoâng tin cuûa nhieät ñoä caàn ño coøn bò aûnh höôûng bôûi nhieät ñoä moâi tröôøng. Ñeå loaïi tröø aûnh höôûng treân, ta caàn phaûi coù moät khoái taïo ra ñieän aùp theo nhieät ñoä moâi tröôøng nhöng coù daáu ngöôïc laïi ⇒ duøng IC caûm bieán LM335A. • IC LM335A laø loaïi caûm bieán nhieät ñoä baùn daãn, coù ñoä nhaïy laø 10mV/ 0C. Aùp taïo ra do LM335A caûm bieán ñöôïc laø : V2 = KTa [0F] = K(273 + Ta) [0C] = K.273 + KTa = C + KTa (C = K.273) vôùi K = 10mV/0C, C = 2.73V ⇒ coù theå trieät tieâu aûnh höôûng cuûa Ta, nhöng laïi taïo ra moät möùc ñieän aùp laø 2.73V ôû 00C neân caàn phaûi coù moät khoái ñeå tröø 2.73V nhaèm taïo ñieän aùp ñaàu ra laø 0V ôû 00C. • Bieán trôû R5 chính laø thaønh phaàn buø tröø 2.73V nhö ñaõ noùi ôû treân. • U8 ñoùng vai troø boä coäng coù khueách ñaïi, ñieän aùp ra cuoái cuøng laø : ( )[ ] 1 10 1113 8 3 129 28//129 10 11131 V R RR R V RR VRRR R RRVout + −   + + +   + += ( )[ ] 1 10 1113 88129129 8//129 10 11131 V R RR R STa R STd RR KTa RR CRRR R RRVout + −   −+ + + + +   + +=⇒ Khoâng bò aûnh höôûng cuûa nhieät ñoä moâi tröôøng : 250 40 10 8 1290 8129 === + ⇒=− + V mV S K R RR R STa RR KTa µ choïn R8 = 100Ω ⇒ R9 + R12 = 25KΩ ⇒ choïn R9 = 22KΩ vaø R12 laø bieán trôû 5KΩ. Khi ñoù caàn ñieàu chænh R12 ñeå trieät tieâu Ta. Trieät tieâu ñieän aùp tónh (2.73V) : 39 -١٢V +٥V +١٢V -١٢V -١٢V -١٢V +٥V +١٢V +١٢V +١٢V R٥ ٥٠٠ ١ ٣ ٢ + - U٨ OP٠٧ ٣ ٢ ٦ ٧ ١ ٤ ٨ + - U٧ OP٠٧٣ ٢ ٦ ٧ ١ ٤ ٨ + - U٦ OP٠٧٣ ٢ ٦ ٧ ١ ٤ ٨ + - U٥ OP٠٧٣ ٢ ٦ ٧ ١ ٤ ٨ R٦ ٢٠K ١ ٣ ٢ + C٥ ١٠uF + C٦ ١٠uF + C٧ ١٠uF R٧ ٢.٢K R٨ ١٠٠ R٩ ٢٢K R١٠ ١K R١١ ٥٦K R١٢ ٥K R١٣ ١٠K D٦ LM٣٣٥A ١ ٣ ٢ + - CAËP NHIEÄT ÑIEÄN Vout V١ V٢ V٣ Nguyenvanbientbd47@gmail.com ( )[ ] 01 10 1113 129 8//129 10 11131 =+−   + +   + + V R RR RR CRRR R RR vôùi (R4 + R5)//R8 = (25KΩ)//(100Ω) = 99.6Ω 251 73.2 251 73.21 10 1113: 1 10 1113 25000 73.26.99 10 11131 =   − + + =   + +⇒ V R RRhay xV R RRxx R RR khi ñoù, ñieän aùp ra laø : ( )[ ] 8 8//129 10 11131 R STdRRR R RRVout +   + += ñieän aùp naøy ñöôïc ñöa tröïc tieáp vaøo ADC 12-bit (ICL7109) neân caàn phaûi coù moät söï töông thích veà ñoä phaân giaûi : ADC 12-bit coù 4096 möùc. Ñieän aùp vaøo toái ña = 2.048V ⇒ 1LSB = 2.048/4.096 = 500µV Ñieàu khieån ñeán 5000C : ⇒ 1LSB = 500/4.096 = 0.1220C choïn 1LSB = 0.20C töùc moãi khi taêng 0.20C thì ñieän aùp ra taêng 500µV ( )[ ] 75.61 10 111375.62 10 11131 251 250 8 8//)129(: 500 8 2.08//129 10 11131 = + ⇒= + +⇒ = + =+   + + R RR R RR R RRRdo V R SxRRR R RR µ choïn R10 = 1KΩ ⇒ R13 + R11 = 61.75KΩ choïn R11 = 56KΩ, R13 laø bieán trôû 10KΩ. Chænh R13 cho ñoä phaân giaûi. Thay vaøo (1) : VVVx 011.01 251 73.2 251 73.2175.61 =⇒=   − choïn R5 laø bieán trôû 500Ω ⇒ caàn chænh R5 ñeå V1 ñaït 0.011V • Caùc tuï C5, C6, C7 choïn giaù trò 10µF ñeå choáng nhieãu. V.Khoái bieán ñoåi AD : Goïi laø moät khoái nhöng thöïc ra chæ caàn ICL7109 laø ñaûm baûo thöïc hieän ñöôïc chöùc naêng naøy, chæ caàn theâm moät soá linh kieän beân ngoaøi nhö ñieän trôû tích phaân, tuï tích phaân… . Ta coù sô ñoà maïch nhö sau : 40 (1) Nguyenvanbientbd47@gmail.com AD bieán ñoåi 12 bit, coäng theâm 2 bit côø (POL chæ cöïc tính, OR chæ quaù thang) nöõa laø 14 bit, trong khi AT89C52 laø vi ñieàu khieån 8 bit neân caàn phaûi ñoïc 2 laàn : laàn thöù nhaát ñoïc byte thaáp, laàn thöù hai ñoïc 4 bit cao vaø 2 côø OR, POL. Töø ñoù ta coù caùch maéc caùc bit döõ lieäu vaøo tuyeán döõ lieäu nhö treân sô ñoà. Töø ban ñaàu ta ñaõ phaân cho byte cao vaø byte thaáp hai vuøng ñòa chæ khaùc nhau, ñöôïc choïn baèng hai tín hieäu CS1 vaø CS2, chæ caàn keát hôïp vôùi tín hieäu RD nöõa laø xong. Do tín hieäu choïn byte thaáp (LBEN) vaø tín hieäu choïn byte cao (HBEN) tích cöïc möùc thaáp neân ta chæ vieäc keát hôïp RD vôùi CS1 (choïn byte thaáp), hay RD vôùi CS2 (choïn byte cao) qua coång OR. Maïch söû duïng nguoàn tham chieáu noäi qua chaân REF OUT cuûa ICL7109, keát hôïp vôùi bieán trôû R16, ta coù theå choïn ñoä lôùn cuûa ñieän aùp tham chieáu. VI.Khoái baøn phím : Coù taát caû 16 phím (SW1 ÷ SW17) ñöôïc maéc theo kieåu ma traän vaøo Port1 cuûa AT89C52 : 41 +٥V +٥V +٥V D٠ D١ D٢ D٣ D٤ D٥ D٦ D٧ D٠ D١ D٢ D٣ D٤ D٥ /LBEN /HBEN RUN /LBEN /HBEN /CS١ /CS٢ /RD /RD U٩ ICL٧١٠٩CPL ٣٥ ٣٤ ٣٣ ٣٦ ٣٩ ٣٧ ٣٨ ٣١ ٢٧ ٢١ ٢٦ ٢٢ ٢٣ ٢٤ ١٨ ١٩ ٢٠ ١٧ ١٦ ١٥ ١٤ ١٣ ١٢ ١١ ١٠ ٩ ٨ ٧ ٦ ٥ ٣ ٤ ٢ ٢٥ ٢٩ ٣٠ ٣٢ IN HI IN LO COMMON REF IN+ REF IN- REF CAP+ REF CAP- A/Z SEND MODE RUN/HOLD OSCI OSCO OSC SEL LBEN HBEN CE/LOAD TEST B١ B٢ B٣ B٤ B٥ B٦ B٧ B٨ B٩ B١٠ B١١ B١٢ POL OR STATUS BUF OSC REF OUT BUFF INTEGR١٤ ١٠٠K C٨ .١٥ C١٠ .٣٣ + C١١ ١uF R١٥ ١M C١٢ .٠١ ١ ١ R١٦ ١٠K ١ ٣ ٢ R١٧ ١٥K X٢ ٣.٥٧٩٥MHz U١٠A ٧٤LS٣٢ ١ ٢ ٣ U١٠B ٧٤LS٣٢ ٤ ٥ ٦ DATA BUS ANALOG IN ( . V MAX)٢٠٤٨ SW٢ SW٣ SW٤ SW٥ SW٦ SW٧ SW٨ SW٩ SW١٠ SW١١ SW١٢ SW١٣ SW١٤ SW١٥ SW١٦ SW١٧ ÑEÁN PORT١ ٠ ١ ٢ ٣ ٤ ٥ ٦ ٧ ٨ ٩ A B C D E F Nguyenvanbientbd47@gmail.com Khi aán moät phím thì phaàn meàm chaïy trong AT89C52 (töùc chöông trình naïp cho noù) seõ traû veà moät giaù trò töø 0 ÷ F tuøy theo vò trí phím nhö hình veõ. Khi ñoù, tuøy theo ngöôøi laäp trình vaø tuøy theo phöông phaùp ñieàu khieån maø ta seõ gaùn chöùc naêng cho phím. VII.Khoái hieån thò : Khoái naøy bao goàm 5 ñeøn LED 7 ñoaïn coù khaû naêng hieån thò caùc thoâng soá vaø traïng thaùi cuûa board maïch, cuõng nhö hieån thò moät soá thoâng baùo baèng caùc chöõ caùi ñôn giaûn. Sô ñoà maïch : Hieån thò LED coù theå söû duïng moät trong hai phöông phaùp : queùt hoaëc laø choát. Ôû ñaây choïn phöông phaùp choát, tuy raèng troâng khoâng coù veû kinh teá laém (vì moãi LED yeâu caàu moät IC choát vaø 8 ñieän trôû). Tuy nhieân phöông phaùp naøy laøm cho laëp trình trôû neân deã daøng hôn (chæ vieäc xuaát giaù trò ra LED ñaõ choïn tröôùc), neân ngöôøi laäp trình taäp trung hôn veà phöông phaùp vaø giaûi thuaät ñieàu khieån. Moät khi ghi ra thieát bò ngoaïi vi thì chaân WR seõ coù tín hieäu kích hoaït. Do ñoù, moät LED ñöôïc choïn vaø nhaän giaù trò khi coù hai tín hieäu : tín hieäu choïn vuøng ñòa chæ vaø tín hieäu ghi. IC74LS373 coù tín hieäu choát tích cöïc möùc cao, vì vaäy CS vaø WR keát hôïp qua coång NOR roài ñöa vaøo chaân choát. VIII.Khoái giao tieáp vôùi maùy tính : Ña soá caùc thieát bò ngaøy nay ñeàu coù theå giao tieáp vôùi maùy tính vì caùc tính naêng tuyeät vôøi cuûa maùy tính. Do ñoù, board maïch ñieàu khieån ôû ñaây cuõng ñöôïc trang bò ñeå coù khaû naêng ñoù. Maëc duø noù cuõng coù yeâu caàu baét buoäc laø naïp chöông trình ñieàu khieån töø maùy tính, nhöng xa hôn nöõa noù coù theå trao ñoåi vôùi maùy tính veà caùc thoâng soá cuûa quaù trình ñieàu khieån, traïng thaùi cuûa maïch vaø coù theå ñöôïc ñieàu khieån bôûi maùy tính …. Sô ñoà maïch giao tieáp duøng MAX232 vaø giao tieáp vôùi maùy tính qua coång noái tieáp (COM1 ÷ COM4) : 42 LE D ١ LE D ٣ LE D ٤ LE D ٠ D ٥ D ٢ D ٢ D ٤ D ٤ D ٦ D ٠ D ٥ D ٧ D ٦ D ٣ D ١ D ١ D ٧ D ٧ D ٠ D ٠ D ٠ D ٥ D ٢ D ٢ D ١ D ٠ D ٦ D ٢ D ١ D ٤ D ٣ D ٤ D ٣ D ٥ D ٧ LE D ٢. D ٧ D ٥ D ١ D ٣ D ٤ D ٣ D ٦ D ٦ /WR /WR /WR /WR /WR LED٠LED١LED٢LED٣LED٤ /CS٣/CS٤/CS٥/CS٦/CS٧ ٧٤LS٣٧٣ ٣ ٤ ٧ ٨ ١٣ ١٤ ١٧ ١٨ ١ ١١ ٢ ٥ ٦ ٩ ١٢ ١٥ ١٦ ١٩ D ٠ D ١ D ٢ D ٣ D ٤ D ٥ D ٦ D ٧ O C G Q ٠ Q ١ Q ٢ Q ٣ Q ٤ Q ٥ Q ٦ Q ٧ ٧٤LS٣٧٣ ٣ ٤ ٧ ٨ ١٣ ١٤ ١٧ ١٨ ١ ١١ ٢ ٥ ٦ ٩ ١٢ ١٥ ١٦ ١٩ D ٠ D ١ D ٢ D ٣ D ٤ D ٥ D ٦ D ٧ O C G Q ٠ Q ١ Q ٢ Q ٣ Q ٤ Q ٥ Q ٦ Q ٧ ٧٤LS٣٧٣ ٣ ٤ ٧ ٨ ١٣ ١٤ ١٧ ١٨ ١ ١١ ٢ ٥ ٦ ٩ ١٢ ١٥ ١٦ ١٩ D ٠ D ١ D ٢ D ٣ D ٤ D ٥ D ٦ D ٧ O C G Q ٠ Q ١ Q ٢ Q ٣ Q ٤ Q ٥ Q ٦ Q ٧ ٧٤LS٣٧٣ ٣ ٤ ٧ ٨ ١٣ ١٤ ١٧ ١٨ ١ ١١ ٢ ٥ ٦ ٩ ١٢ ١٥ ١٦ ١٩ D ٠ D ١ D ٢ D ٣ D ٤ D ٥ D ٦ D ٧ O C G Q ٠ Q ١ Q ٢ Q ٣ Q ٤ Q ٥ Q ٦ Q ٧ ٧٤LS٣٧٣ ٣ ٤ ٧ ٨ ١٣ ١٤ ١٧ ١٨ ١ ١١ ٢ ٥ ٦ ٩ ١٢ ١٥ ١٦ ١٩ D ٠ D ١ D ٢ D ٣ D ٤ D ٥ D ٦ D ٧ O C G Q ٠ Q ١ Q ٢ Q ٣ Q ٤ Q ٥ Q ٦ Q ٧ D٠ LED٧ ٧ ٦ ٤ ٢ ١ ٩ ١٠ ٥ A B C D E F G H D١ LED٧ ٧ ٦ ٤ ٢ ١ ٩ ١٠ ٥ A B C D E F G H D٢ LED٧ ٧ ٦ ٤ ٢ ١ ٩ ١٠ ٥ A B C D E F G H D٣ LED٧ ٧ ٦ ٤ ٢ ١ ٩ ١٠ ٥ A B C D E F G H D٤ LED٧ ٧ ٦ ٤ ٢ ١ ٩ ١٠ ٥ A B C D E F G H ٧٤LS٠٢ ٧٤LS٠٢ ٧٤LS٠٢ ٧٤LS٠٢ ٧٤LS٠٢ DATA BUS x٨ ٣٣ ٠ x٨ ٣٣ ٠ x٨ ٣٣ ٠ x٨ ٣٣ ٠ x٨ ٣٣ ٠ Nguyenvanbientbd47@gmail.com Trong pheùp giao tieáp thoâng thöôøng, chæ caàn 3 daây noái : TXD, RXD, GND laø ñaõ ñaûm baûo cho giao tieáp. Tuy nhieân, trong nhöõng tröôøng hôïp coù yeâu caàu veà thieát laäp quan heä giao tieáp thì board maïch cuõng coù hoã trôï nhö sau : • Thieát laäp quan heä baèng phaàn meàm : cuõng chæ caàn 3 daây nhö treân, nhöng phaûi söûa ñoåi phaàn meàm ñeå göûi cuõng nhö nhaän XON/XOFF (kyù töï 13H vaø kyù töï 17H). • Thieát laäp quan heä baèng phaán cöùng : luùc naøy caàn theâm hai daây noái RTS/CTS hoaëc DSR/DTR tuøy theo caùch choïn vaø phaàn meàm qui ñònh. Boad maïch hoã trôï caû hai caùch choïn treân baèng caùch thieát laäp jumper3x4 vaø naïp cho vi ñieàu khieån phaàn meàm xöû lyù töông öùng. IX.Khoái maïch coâng suaát : Khoái naøy phaûi ñaûm baûo hai yeâu caàu : caùch ly veà ñieän vaø ñoùng ngaét ñaùng tin caäy. Coù theå duøng relay ñeå ñaûm baûo yeâu caàu caùch ly veà ñieän nhöng laïi xaûy ra tia löûa ñieän khi ñoùng ngaét coâng suaát lôùn, cuõng nhö ñoä treã töông ñoái lôùn khoâng phuø hôïp cho ñoùng ngaét trong khoaûng thôøi gian beù. Qua ñoù ta thaáy vieäc duøng opto triac laø hieäu quaû hôn caû. Ôû ñaây, tín hieäu ñieàu khieån ñöôïc khueách ñaïi doøng qua transitor 2SC828 vaø ñoùng ngaét opto triac. Do opto triac coù coâng suaát nhoû neân caàn phaûi duøng moät triac coù coâng suaát lôùn, vaø nguoàn kích triac naøy chính laø opto triac. 43 +٥V DSR CTS DTR RTS S١ S٢ RXD TXD OUT RTS DSR DTR IN CTS IN OUT + C٣ ١٠uF +C٢ ١٠uF +C١ ١٠uF + C٤ ١٠uF SUB-D ٩ ٥ ٩ ٤ ٨ ٣ ٧ ٢ ٦ ١ MAX٢٣٢ ١٣ ٨ ١١ ١٠ ١ ٣ ٤ ٥ ٢ ٦ ١٢ ٩ ١٤ ٧ R١IN R٢IN T١IN T٢IN C١+ C١- C٢+ C٢- V+ V- R١OUT R٢OUT T١OUT T٢OUT JP ١ JU M P E R ٣X ٤ A ١ A ٢ A ٣ A ٤ B١ B٢ B٣ B٤ C ١ C ٢ C ٣ C ٤ Nguyenvanbientbd47@gmail.com X.Toång quan : Treân ñaây ñaõ trình baøy laàn löôït chöùc naêng vaø sô ñoà maïch cuûa töøng khoái. Töø ñoù, ta coù theå söû duïng board maïch naøy laøm neàn taûng ñeå thieát keá chöông trình vaø cho chaïy treân noù. Chöông sau seõ cung caáp moät soá chöông trình con gaén lieàn vôùi hoaït ñoäng cuûa töøng khoái. Ngöôøi vieát chöông trình ñieàu khieån chæ vieäc vieát chöông trình cuûa mình, moãi khi caà nhaän moät phím hay ñieàu khieån loø nung, hieån thò LED,… chæ vieäc goïi chöông trình con töông öùng. 44 +٥V POWER MOC٣٠٢٠ ١ ٢ ٦ ٤Q٢ ٢SC٨٢٨ R١٨ ٣٣٠ R١٩ ٢.٢K R٢٠ ٤٧٠ BT١٦ ١ ١ LO NUNG VAC٢٢٠ Nguyenvanbientbd47@gmail.com CHÖÔNG 4 : CAÙCCHÖÔNG TRÌNH CON PHUÏC VUÏ  Phaàn naøy seõ ñöa ra moät soá chöông trình con phuïc vuï caùc khoái nhö : baøn phím, LED hieån thò, bieán ñoåi AD … I.Gaùn ñòa chæ : Moãi thieát bò ngoaïi vi ñaõ ñöôïc phaân vuøng ñòa chæ nhö trong thieát keá phaàn cöùng, ñoái vôùi phaàn meàm ta gaùn cho chuùng moät ñòa chæ coá ñòng vaø truy caäp chuùng. RAM EQU 0000H ;/CS0 ADL EQU 2000H ;/CS1 ADH EQU 4000H ;/CS2 LED0 EQU 6000H ;/CS3 LED1 EQU 8000H ;/CS4 LED2 EQU 0A000H ;/CS5 LED3 EQU 0C000H ;/CS6 LED4 EQU 0E000H ;/CS7 II.Truy xuaát RAM : Khi chöông trình ñang chaïy laø chöông trình noäi beân trong vi ñieàu khieån thì taùc vuï treân RAM chæ laø ñoïc vaø ghi döõ lieäu leân RAM. Thoâng qua con troû DPTR vaø leänh MOVX (truy caäp boä nhôù ngoaøi), ta coù theå ñoïc vaø ghi RAM nhö sau : MOV DPTR,#xxxxH ;Address pointer (xxxx: 0000 ÷ 1FFF) MOVX @DPTR,A ;Write RAM MOVX A,@DPTR ;Read RAM III.Ñoïc phím aán : Khoái baøn phím xöû duïng hai chöông trình con IN_HEX vaø GET_KEY. Tuy nhieân veà maët ngöôøi duøng thì chæ caàn goïi IN_HEX vaø xem maõ noù traû veà maø xaùc ñònh phím naøo ñaõ ñöôïc aán. • GET_KEY : queùt haøng vaø coät ñeå xaùc ñònh xem coù moät phím naøo ñoù ñöôïc aán khoâng. Neáu khoâng coù phím naøo ñöôïc aán, noù seõ traû veà côø C = 0. coøn neáu coù phím aán thì noù traû veà C = 1, vaø maõ phím (maõ hex) naèm trong 4 bit thaáp cuûa ACC. • IN_HEX : chöông trình con coù nhieäm vuï choáng rung phím, baèng caùch laëp laïi GET_KEY khoaûng 50 laàn. Neáu nhö 50 laàn ñeàu traû veà C = 1 thì töùc laø coù moät phím ñöôïc aán, coøn neáu coù moät laàn C = 0 thì ñoù laø rung ñoäng vaø boä ñeám ñöôïc reset. Sau khi ñaõ phaùt hieän coù phím aán, IN_HEX seõ chôø moät khoaûng thôøi gian töông öùng 50 laàn goïi GET_KEY ñeå ñaûm baûo raèng khoâng coøn rung cho laàn goïi GET_KEY keá tieáp. 45 P1.0 P1.1 P1.2 P1.3 P1.4 P1.5 P1.6 P1.7 A T8 9C 52 0 1 2 3 4 5 6 7 8 9 A B C D E F Nguyenvanbientbd47@gmail.com Giaûi thuaät 46 IN_HEX Laëp = 50 GET_KEY C = 1 ? Giaûm Laëp Laëp = Caát maõ phím Laëp = 50 GET_KEY C = 0 ? Giaûm Laëp Laëp = 0 Phuïc hoài maõ phím RET No Yes No Yes No Yes Yes GET_KEY Maõ queùt = 11111110B Coù bit haøng = 0 ? Giaûm Soá ñeám Chuyeån maõ haøng veà 4 bit Soá ñeám = No Yes No Yes Soá ñeám = 4 Xuaát maõ queùt ra port1 Nhaäp port1 vaøo ACC Xoùa caùc bit coät (4 bit thaáp) 1 Dòch traùi maõ queùt Soá thöù töï coät = 4 - Soá Maõ phím = soá thöù töï Soá ñeám = 4 2 Xoùa côø C = 0 Nguyenvanbientbd47@gmail.com chöông trình ;*************************************************************** ;IN_HEX : nhaäp maõ phím coù choáng rung baèng caùch laëp 50 laàn cho luùc aán vaø * ; 50 laàn cho luùc nhaû. * ;*************************************************************** INHEX: MOV R3,#50 ;soá laàn laëp BACK: CALL GETKEY ;coù phím aán ? JNC INHEX ;khoâng, laëp laïi DJNZ R3,BACK ;coù, laëp 50 laàn PUSH ACC BACK2: MOV R3,#50 BACK3: CALL GETKEY ;phím nhaû ? JC BACK2 ;khoâng, laëp laïi DJNZ R3,BACK3 ;coù, laëp 50 laàn POP ACC ;maõ phím trong ACC RET 47 Dòch MSB cuûa ACC vaøo côø C 1 C = 0 ? Maõ phím = soá thöù töï coät + 4 Giaûm Soá ñeám Soá ñeám = C = 1 Caát maõ phím vaøo ACC RET 2 No Yes No Nguyenvanbientbd47@gmail.com ;*************************************************************** ;GET_KEY : chöông trình ñoïc traïng thaùi phím, traû veà : * ; C = 0 neáu khoâng coù phím aán. * ; C = 1 vaø maõ phím trong ACC neáu coù phím aán. * ;*************************************************************** GETKEY: MOV A,#0FEH ;baét ñaàu ôû coät 0 MOV R6,#4 ;R6 : boä ñeám TEST: MOV P1,A ;kích hoaït coät MOV R7,A ;löu ACC MOV A,P1 ;nhaän traïng thaùi phím ANL A,#0F0H CJNE A,#0F0H,KEYHIT ;coù phím aán ⇒ xaùc ñònh phím MOV A,R7 ;khoâng coù phím aán, qua coät keá RL A DJNZ R6,TEST CLR C ;khoâng coù moät phím naøo aán JMP EXIT ;thoaùt vôùi C = 0 KEYHIT: MOV R7,A MOV A,#4 ;tính troïng soá coät CLR C SUBB A,R6 ;4 - R6 = troïng soá MOV R6,A MOV A,R7 SWAP A MOV R5,#4 AGAIN: RRC A ;tính maõ phím JNC DONE INC R6 INC R6 INC R6 INC R6 DJNZ R5,AGAIN DONE: SETB C ;C = 1 vaø ACC chöùa maõ phím MOV A,R6 EXIT: RET IV.Hieån thò LED : Vieäc hieån thò LED cuõng gioáng nhö vieäc ghi RAM : thoâng qua con troû DPTR chöùa ñòa chæ roài duøng leänh MOVX. Chöông trình con sau ñaây cung caáp moät phöông tieän ñeå xuaát ra LED. ;*************************************************************** ;OUTLED : chöông trình con xuaát ra 5 LED 7-ñoaïn. * ;nhaäp vaøo : R0 R1 R2 R3 R4 * 48 Nguyenvanbientbd47@gmail.com ; LED0 LED1 LED2 LED3 LED4 * ;*************************************************************** OUTLED: PUSH DPH PUSH DPL PUSH ACC MOV DPTR,#LED0 ;LED0 MOV A,R0 MOVX @DPTR,A MOV DPTR,#LED1 ;LED1 MOV A,R1 MOVX @DPTR,A MOV DPTR,#LED2 ;LED2 MOV A,R2 MOVX @DPTR,A MOV DPTR,#LED3 ;LED3 MOV A,R3 MOVX @DPTR,A MOV DPTR,#LED4 ;LED4 MOV A,R4 MOVX @DPTR,A POP ACC POP DPL POP DPH RET Baûng sau ñaây seõ cung caáp maõ hieån thò cuûa caùc con soá vaø moät soá chöõ caùi: Kyùtöï Maõ nhò phaân Hex Kyù töï Maõ nhò phaân Hex Kyù töï Maõ nhò phaân Hex 0 11000000B C0H H. 00001001B 09H i. 01001111B 4FH 1 11111001B F9H I. j. 01110001B 71H 2 10100100B A4H J. 01100001B 61H k. 3 10110000B B0H K. l. Kyù töï Maõ nhò phaân Hex Kyù töï Maõ nhò phaân Hex Kyù töï Maõ nhò phaân Hex 4 10011001B 99H L. 01000111B 47H m. 5 10010010B 92H M. n. 01001000B 48H 6 10000010B 82H N. o. 00100011B 23H 7 11111000B F8H O. 01000000B 40H p. 8 10000000B 80H P. 00001100B 0CH q. 00011000B 18H 9 10010000B 90H Q. r. 01001100B 4CH 0. 01000000B 40H R. s. 49 c D٧ D٦ D٥ D٤ D٣ D٢ D١ D٠ h abcdef h g g f e d b a saùng : bit Di = ٠ Nguyenvanbientbd47@gmail.com 1. 01111001B 79H S. 0010010B 12H t. 00000111B 07H 2. 00100100B 24H T. 01001110B 4EH u. 01100011B 63H 3. 00110000B 30H U. 01000001B 41H v. 01100011B 63H 4. 00011001B 19H V. 01000001B 41H w. 5. 00010010B 12H W. x. 6. 00000010B 02H X. y. 00010001B 11H 7. 01111000B 78H Y. 00011001B 19H z. 8. 00000000B 00H Z. 00100100B 24H ! 01111001B 79H 9. 00010000B 10H a 10100000B A0H “ 11011101B DDH A 10001000B 88H b 10000011B 83H # B c 10100111B A7H $ C 11000110B C6H d 10100001B A1H % D e 10000100B 84H & E 10000110B 86H f ‘ 11111101B FDH F 10001110B 8EH g 10010000B 90H ( G 11000010B C2H h 10001011B 8BH ) H 10001001B 89H i 11001111B CFH * I j 11110001B F1H + J 11100001B E1H k ` 11011111B DFH K l - 10111111B BFH L 11000111B C7H m . 01111111B 7FH M n 11001000B C8H / N o 10100011B A3H : O 11000000B C0H p ; P 10001100B 8CH q 10011000B 98H < Q r 11001100B CCH > R s = 10110111B B7H S 10010010B 92H t 10000111B 87H ? 00101100B 2CH T 11001110B CEH u 11100011B E3H [ 11000110B C6H U 11000001B C1H v 11100011B E3H \ V 11000001B C1H w ] 11110000B F0H W x ^ X y 10010001B 91H _ 11110111B F7H Y 10011001B 99H z { Z 10100100B A4H a. 00100000B 20H ~ A. 00001000B 01H b. 00000011B 03H } B. c. 00100111B A7H @ C. 01000110B 46H d. 00100001B 21H ≡ 10110110B B6H D. e. 00000100B 04H 0 10011100B 9CH E. 00000110B 06H f. F. 00001110B 0EH g. 00010000B 10H G. 01000010B 42H h. 00001011B 0BH V.Xuaát nhaäp qua coång noái tieáp : Xuaát nhaäp qua coång noái tieáp yeâu caàu moät soá thieát laäp ban ñaàu bao goàm vieäc ñaët timer1 phuïc vuï cho vieäc taïo baudrate, vaø giaù trò cuûa baudrate. Sau ñaây laø moät ñoaïn ví duï : INIT: MOV SP,#7FH ;Stack's bottom MOV SCON,#11010010B ;UART 9-bit, enable REN, flag TI MOV TMOD,#21H ;Timer1 8-bit reload, Timer0 16-bit MOV TH1,#-3 ;9600 baud MOV TL1,TH1 ;start SETB TR1 50 Nguyenvanbientbd47@gmail.com Thoâng thöôøng trong truyeàn thoâng khoâng ñoàng boä, ngöôøi ta duøng even parity ñeå kieåm tra loãi truyeàn. Töø ñoù ta coù ñoaïn chöông trình xuaát nhaäp sau : ;*************************************************************** ;IN : chöông trình con nhaän mot byte töø serial port * ;XUAÁT :acc _ byte nhaän ñöôïc * ; c _ loãi truyeàn * ;*************************************************************** IN: CLR C JNB RI,$ ;coù döõ lieäu töø maùy tính göûi ñeán ? CLR RI ;coù ⇒ kieåm tra even parity MOV C,RB8 MOV B.0,C MOV A,SBUF PUSH ACC MOV C,P MOV ACC.0,C XRL A,B MOV C,ACC.0 POP ACC RET ;************************************************************ ;OUT : chöông trình con xuaát moät byte ra port noái tieáp * ;NHAÄP : acc _ byte caàn xuaát * ;************************************************************ OUT: MOV C,P MOV TB8,C JNB TI,$ CLR TI MOV SBUF,A RET 51 Nguyenvanbientbd47@gmail.com TAØI LIEÄU THAM KHAÛO 1. ÑIEÀU KHIEÅN TÖÏ ÑOÄNG (quyeån 1, 2) _ Nguyeãn Thò Phöông Haø _ NXB KHKT (1996). 2. CÔ SÔÛ TÖÏ ÑOÄNG _ Löông Vaên Laêng. 3. SOÅ TAY CHO NGÖÔØI LAÄP TRÌNH PC _ Julio Sanchez, Maria Canton _ NXB Thoáng Keâ (1997). 4. HÖÔÙNG DAÃN THÍ NGHIEÄM VI XÖÛ LYÙ _ Boä Moân Kyõ Thuaät Ñieän Töû (1999). 5. HÖÔÙNG DAÃN THÍ NGHIEÄM ÑIEÀU KHIEÅN TÖÏ ÑOÄNG 1 _ Boä Moân Töï Ñoäng. 6. TAÏP CHÍ THEÁ GIÔÙI VI TÍNH (thaùng 3 naêm1998). 7. ÑO LÖÔØNG VAØ ÑIEÀU KHIEÅN BAÈNG MAÙY TÍNH _ Ngoâ Dieân Taäp. 8. THE 8051 MICROCONTROLLER _ I. Scott MacKenzie _ NXB Prentice Hall (1992). 9. DIGITAL SYSTEMS : PRICIPALS AND APPLICATIONS _ Ronald J. Tocci _ NXB Prentice Hall. Vaø moät soá website nhö: 1. 2. 52

Các file đính kèm theo tài liệu này:

  • pdfThiết kế bo mạch điều khiển nhiệt độ.pdf