新聞中心

        EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > FPGA和單片機的串行通信接口設(shè)計

        FPGA和單片機的串行通信接口設(shè)計

        作者: 時間:2010-06-20 來源:網(wǎng)絡(luò) 收藏

        if oddb='1' then
        sout1='0';state=stop2;
        else
        sout1='1';state=stop2;
        end if;
        when stop2=>
        sout1='1'; --停止位
        if len=0000000000000000 then
        state=stop2;
        else
        state=start1;
        len=len-1;
        end if;
        end case;
        end if;
        end process;
        sout=sout1;
        end behav;
        其中各信號的說明已在程序中標(biāo)明了。波形仿真圖如圖2所示。

        圖2 數(shù)據(jù)發(fā)送時序仿真圖
        圖中Din寫入值為3355H,波特率為2400Hz,Start信號始終置邏輯1,即隨時都能發(fā)送數(shù)據(jù)。Reset信號邏輯1時復(fù)位,邏輯0時電路開始工作。THR是數(shù)據(jù)寄存器,文件頭、數(shù)據(jù)長度以及數(shù)據(jù)位都先寄存到THR中,Len是數(shù)據(jù)長度,TSR是低8位數(shù)據(jù)幀寄存器,TSR1是高8位數(shù)據(jù)幀寄存器。數(shù)據(jù)長度Len定為02H,發(fā)送時先發(fā)送低8位55H,后發(fā)送高8位33H,一共發(fā)送兩遍。發(fā)送的數(shù)據(jù)格式說明:當(dāng)發(fā)送55H時,其二進制為01010101,則發(fā)送的數(shù)據(jù)的二進制數(shù)為00101010111(1位開始位+8位數(shù)據(jù)位+1位奇校驗位+1位停止位)。
        部分先對發(fā)送過來的文件頭進行確認,正確就接收文件,否則放棄接收的數(shù)據(jù)。根據(jù)發(fā)送模塊的協(xié)議,對串口控制寄存器SCON和波特率控制寄存器PCON的設(shè)置即可實現(xiàn)。

        本文引用地址:http://www.104case.com/article/151789.htm

        3 總結(jié)
        目前電子產(chǎn)品的開發(fā)中經(jīng)常要綜合運用EDA技術(shù)、計算機控制技術(shù)、數(shù)字信號處理技術(shù),那么電路各部分經(jīng)常需要數(shù)據(jù)交換。本文也是基于此給出這方面應(yīng)用的實例,供開發(fā)者交流。


        上一頁 1 2 下一頁

        評論


        相關(guān)推薦

        技術(shù)專區(qū)

        關(guān)閉
        主站蜘蛛池模板: 乐山市| 东明县| 马关县| 威信县| 普洱| 中阳县| 嘉义市| 三穗县| 信阳市| 商水县| 胶州市| 疏勒县| 阿鲁科尔沁旗| 敦化市| 句容市| 新宁县| 永顺县| 固始县| 安阳县| 蒙城县| 宝坻区| 镇远县| 大新县| 平阴县| 故城县| 浪卡子县| 措勤县| 大田县| 新源县| 湘潭市| 成安县| 烟台市| 徐水县| 开封市| 芷江| 德昌县| 西贡区| 迁西县| 阜南县| 旬邑县| 鸡西市|