日韩床上生活一级视频|能看毛片的操逼网站|色悠悠网站在线观看视频|国产免费观看A淫色免费|国产av久久久久久久|免费A级视频美女网站黄|国产毛片av日韩小黄片|热久久免费国产视频|中文字幕无码色色|成人在线视频99久久久

機電之家資源網
單片機首頁|單片機基礎|單片機應用|單片機開發(fā)|單片機文案|軟件資料下載|音響制作|電路圖下載 |嵌入式開發(fā)
培訓信息
贊助商
模擬串口程序
模擬串口程序
 更新時間:2008-8-17 19:45:39  點擊數:32
【字體: 字體顏色
<!--printpage.asp##{$bbslist}循環(huán)部分-->
51單片機模擬串口的三種方法ZT  (http://www.chinadsp.cn/bbs/dispbbs.asp?boardid=3&id=368)

--  作者:wen_zl
--  發(fā)布時間:2006-5-4 11:25:16

--  51單片機模擬串口的三種方法ZT
隨著單片機的使用日益頻繁,用其作前置機進行采集和通信也常見于各種應用,一般是利用前置
機采集各種終端數據后進行處理、存儲,再主動或被動上報給管理站。這種情況下下,采集會需
要一個串口,上報又需要另一個串口,這就要求單片機具有雙串口的功能,但我們知道一般的51
系列只提供一個串口,那么另一個串口只能靠程序模擬。
本文所說的模擬串口, 就是利用51的兩個輸入輸出引腳如P1.0和P1.1,置1或0分別代表高低電
平,也就是串口通信中所說的位,如起始位用低電平,則將其置0,停止位為高電平,則將其置
1,各種數據位和校驗位則根據情況置1或置0。至于串口通信的波特率,說到底只是每位電平持續(xù)
的時間,波特率越高,持續(xù)的時間越短。如波特率為9600BPS,即每一位傳送時間為
1000ms/9600=0.104ms,即位與位之間的延時為為0.104毫秒。單片機的延時是通過執(zhí)行若干條
指令來達到目的的,因為每條指令為1-3個指令周期,可即是通過若干個指令周期來進行延時的,
單片機常用11.0592M的的晶振,現在我要告訴你這個奇怪數字的來歷。用此頻率則每個指令周期
的時間為(12/11.0592)us,那么波特率為9600BPS每位要間融多少個指令周期呢?
指令周期s=(1000000/9600)/(12/11.0592)=96,剛好為一整數,如果為4800BPS則為
96x2=192,如為19200BPS則為48,別的波特率就不算了,都剛好為整數個指令周期,妙吧。至于
別的晶振頻率大家自已去算吧。
現在就以11.0592M的晶振為例,談談三種模擬串口的方法。

方法一:延時法

    通過上述計算大家知道,串口的每位需延時0.104秒,中間可執(zhí)行96個指令周期。
#define uchar unsigned char
sbit P1_0 = 0x90;
sbit P1_1 = 0x91;
sbit P1_2 = 0x92;
#define RXD P1_0
#define TXD P1_1
#define WRDYN 44 //寫延時
#define RDDYN 43 //讀延時

//往串口寫一個字節(jié)
void WByte(uchar input)
{
    uchar i=8;
    TXD=(bit)0;                     //發(fā)送啟始

    Delay2cp(39);
    //發(fā)送8位數據位
    while(i--)
    {
        TXD=(bit)(input&0x01);     //先傳低位
        Delay2cp(36);
        input=input>>1;
    }
    //發(fā)送校驗位(無)
    TXD=(bit)1;                     //發(fā)送結束

    Delay2cp(46);
}

//從串口讀一個字節(jié)
uchar RByte(void)
{
    uchar Output=0;
    uchar i=8;
    uchar temp=RDDYN;
    //發(fā)送8位數據位
Delay2cp(RDDYN*1.5);         //此處注意,等過起始位
    while(i--)
    {
        Output >>=1;
        if(RXD) Output   =0x80;     //先收低位
        Delay2cp(35);             //(96-26)/2,循環(huán)共

[1] [2] [3] [4] [5] [6] [7] [8]  下一頁
  • 上一篇: 硬件工程師必看---必殺技學習(轉)
  • 下一篇: [轉載]點陣式LED簡單圖形顯示技術
  • 發(fā)表評論   告訴好友   打印此文  收藏此頁  關閉窗口  返回頂部
    熱點文章
     
    推薦文章
     
    相關文章
    網友評論:(只顯示最新5條。)
    關于我們 | 聯系我們 | 廣告合作 | 付款方式 | 使用幫助 | 機電之家 | 會員助手 | 免費鏈接

    點擊這里給我發(fā)消息66821730(技術支持)點擊這里給我發(fā)消息66821730(廣告投放) 點擊這里給我發(fā)消息41031197(編輯) 點擊這里給我發(fā)消息58733127(審核)
    本站提供的機電設備,機電供求等信息由機電企業(yè)自行提供,該企業(yè)負責信息內容的真實性、準確性和合法性。
    機電之家對此不承擔任何保證責任,有侵犯您利益的地方請聯系機電之家,機電之家將及時作出處理。
    Copyright 2007 機電之家 Inc All Rights Reserved.機電之家-由機電一體化網更名-聲明
    電話:0571-87774297 傳真:0571-87774298
    杭州濱興科技有限公司提供技術支持

    主辦:杭州市高新區(qū)(濱江)機電一體化學會
    中國行業(yè)電子商務100強網站

    網站經營許可證:浙B2-20080178-1