很多朋友在使用單片機串口的時候存在著一定的問題,我根據(jù)自己的經(jīng)驗,給大家總結(jié)如下:串口調(diào)試經(jīng)過調(diào)試,以上功能基本實現(xiàn),目前可以通過上位機對單片機進行實時控制。程序如下://這是一個單片機C51
/*----------------------------------------------------------------*File Name: stc_AD.c -*Description:A/D轉(zhuǎn)換程序*Project: -*MCU type: STC12C5410AD - -*Company: WY -*Compiler: KEIL C51 -*D
//液晶屏為JM12864或FYD12864(帶字庫),我用這兩種型號的屏沒問題, 4行*8列漢字=32 串行通信 接/口P1.5--P1.7,可根據(jù)你的電路修改相應(yīng)的接口。#include #include #define uchar unsigned charvoidL
DAC0832
#include #include sfr P1_ADC_EN = 0x97; //A/D轉(zhuǎn)換功能允許寄存器sfr ADC_CONTR = 0xC5; //A/D轉(zhuǎn)換控制寄存器sfr ADC_DATA = 0xC6; //A/D轉(zhuǎn)換結(jié)果寄存器sfr P1M0=0x91;sfr P1M1=0x92; #define uchar
#include sfr ADC_CONTR=0xC5;/*A/D轉(zhuǎn)換寄存器*/sfr ADC_DATA=0xC6;/*A/D 轉(zhuǎn)換結(jié)果寄存器, 為10 位 A/D 轉(zhuǎn)換結(jié)果的高8 位*/sfr ADC_LOW2=0x0BE;/*A/D 轉(zhuǎn)換結(jié)果寄存器, 低2 位有效, 為10 位 A/D 轉(zhuǎn)換結(jié)果
#include //定義的系統(tǒng)頭文件和全局變量#include #define uchar unsigned char#define uint unsigned int#define DogReset() WDT_CONTR=0x35// T1 定時 0.1ms.作為系統(tǒng)計時用,#definevT01ms2#definevT
stc單片機具有在應(yīng)用編程,調(diào)試起來比較方便;帶有10位AD;內(nèi)部eeprom;可在1T/機器周期下工作,速度是傳統(tǒng)51單片機的12倍;下面是我寫的AD和EEPROM的驅(qū)動C代碼:/*----------------------------------
設(shè)計思路:用定時器中斷產(chǎn)生最小時間單位T0,每m個T0組成一個子周期T10,其中前n個T0為LED導(dǎo)通時間,即Ton=n*T0,則Toff=(m-n)*T0;每X個T10組成一個母周期T20,其中前y個T10為有效控制時間,后續(xù)的(x-y
引 言 MCS-51單片機的中斷響應(yīng)延遲時間,取決于其它中斷服務(wù)程序是否在進行,或取決于正在執(zhí)行的是什么樣的指令。單中斷系統(tǒng)中的中斷響應(yīng)時間為3~8個機器周期[1]。無論是哪一種原因引起的誤差,在精
1 前言單片機內(nèi)部一般有若干個定時器。如8051單片機內(nèi)部有定時器0和定時器1。在定時器計數(shù)溢出時,便向CPU發(fā)出中斷請求。當(dāng)CPU正在執(zhí)行某指令或某中斷服務(wù)程序時,它響應(yīng)定時器溢出中斷往
1.實驗任務(wù) 如圖4.1.1所示:在P1.0端口上接一個發(fā)光二極管L1,使L1在不停地一亮一滅,一亮一滅的時間間隔為0.2秒。2.電路原理圖 圖4.1.13.系統(tǒng)板
1.實驗任務(wù) 如圖4.2.1所示,監(jiān)視開關(guān)K1(接在P3.0端口上),用發(fā)光二極管L1(接在單片機P1.0端口上)顯示開關(guān)狀態(tài),如果開關(guān)合上,L1亮,開關(guān)打開,L1熄滅。2.電路原理圖 圖4.2.
1.實驗任務(wù) 做單一燈的左移右移,硬件電路如圖4.4.1所示,八個發(fā)光二極管L1-L8分別接在單片機的P1.0-P1.7接口上,輸出“0”時,發(fā)光二極管亮,開始時P1.0→P1.1→P1.2→P1.3→┅→P1.7→P1.6→┅
1.實驗任務(wù) 用P1.0輸出1KHz和500Hz的音頻信號驅(qū)動揚聲器,作報警信號,要求1KHz信號響100ms,500Hz信號響200ms,交替進行,P1.7接一開關(guān)進行控制,當(dāng)開關(guān)合上響報警信號,當(dāng)開關(guān)斷開告警信號停止,編
1.實驗任務(wù) 如圖4.13.1所示,P0端口接動態(tài)數(shù)碼管的字形碼筆段,P2端口接動態(tài)數(shù)碼管的數(shù)位選擇端,P1.7接一個開關(guān),當(dāng)開關(guān)接高電平時,顯示“12345”字樣;當(dāng)開關(guān)接低電平時,顯示“HELLO”字樣。2.
1.實驗任務(wù) 用AT89S51單片機的定時/計數(shù)器T0產(chǎn)生一秒的定時時間,作為秒計數(shù)時間,當(dāng)一秒產(chǎn)生時,秒計數(shù)加1,秒計數(shù)到60時,自動從0開始。硬件電路如下圖所示2.電路原理圖圖4.15.13.系統(tǒng)板上硬件
1.實驗任務(wù) 當(dāng)按下開關(guān)SP1,AT89S51單片機產(chǎn)生“叮咚”聲從P1.0端口輸出到LM386,經(jīng)過放大之后送入喇叭。2.電路原理圖圖4.19.13.系統(tǒng)板上硬件連線(1).把“單片機系統(tǒng)”區(qū)域中的P1.0端口用導(dǎo)線連
1.實驗任務(wù) 根據(jù)設(shè)定好的密碼,采用二個按鍵實現(xiàn)密碼的輸入功能,當(dāng)密碼輸入正確之后,鎖就打開,如果輸入的三次的密碼不正確,就鎖定按鍵3秒鐘,同時發(fā)現(xiàn)報警聲,直到?jīng)]有按鍵按下3種后,才打開按
1.實驗任務(wù) 利用AT89S51單片機的T0、T1的定時計數(shù)器功能,來完成對輸入的信號進行頻率計數(shù),計數(shù)的頻率結(jié)果通過8位動態(tài)數(shù)碼管顯示出來。要求能夠?qū)?-250KHz的信號頻率進行準確計數(shù),計數(shù)誤差不超過