亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? anayserial.c

?? W78E516實現高速公路收費站語音費額顯示器資料之三:產品的語音,通訊,顯示全套源代碼程序.
?? C
?? 第 1 頁 / 共 2 頁
字號:
/**************************************************************/
/**文件名:anayserial.c                                      **/
/**                                                          **/
/**文件描述: 通過RS232接收上位機的數據,對該數據進行分析;     **/
/**          顯示相應的內容,發出相應的語音.                  **/
/**          數據類型分為:機器內碼形式,點陣形式,固定語句形式 **/
/**                                                          **/
/**創建人: 陳蕓    時間: 2007年07月17日                      **/
/**                                                          **/
/**版本號: 01                                                **/
/**修改記錄                                                  **/
/**************************************************************/

#include<reg52.h>
#include<absacc.h>
#include<def_pin.h>
#include<def_para.h>
#include<def_code.h>

void WDFeed(void);
void Tx(void);
void rom2ram_hanzi(uchr x,ulng y);
void rom2ram_ascii(uchr x,uchr y);

void main(void)
        {
        uchr cnt_zi=0,tmpi=0,tmpq=0,tmpw=0,tp=0,tmp=0;
        uint i=0;
        ulng tmpoffset=0;
        uchr style=0,length_h=0,length_l=0,chk=0,length_s=0;
        uint length_d=0;
        bit f_over=0;

        //片內擴展DATA設置
        CHPENR=0x87;
        CHPENR=0x59;
        CHPCON=0x00;  //CHPCON|=0x10;//片內外部存儲器寫允許   //CHPCON=0x00; ----則片內外部存儲器寫禁止
        //串口初始化
        TMOD=0x21;  //定時器0,方式1;定時器1,方式2
        TH1=0X0fd;
        TL1=0x0fd;
        PCON=0x00;
        SCON=0x50;

        //定時器初始化
        TH0=0xfc;//定時1ms
        TL0=0x66;
        //外部中斷初始化
        IT0=1;
        //設置中斷優先級
        PS=1;
        PX0=1;
        PT0=1;
        //開中斷
        EA=1;
        ES=1;
        ET0=1;
        ET1=1;
        EX0=1;
        TR1=1;
        TR0=1;

        pin_wrram=1;
        pin_full=1;
        while(1)
                {
                WDFeed();
                if(f_delaywr==1)
                        {
                        f_delaywr=0;
                        //硬件寫置1
                        pin_wrram=1;
                        if(f_normdisp==1)
                                {
                                f_normdisp=0;
                                cnt_zi=0;
                                tmpi=0;
                                for(i=0;i<lengthnorm;i++)
                                        {
                                        tp=codebuff[i];
                                        if(tp>0x80) //漢字
                                                {
                                                tmpi++;
                                                cnt_zi++;
                                                if(tmpi==2)
                                                        {
                                                        tmpi=0;
                                                        tmpq=codebuff[i-1]-0xa0;
                                                        tmpw=codebuff[i]-0xa0;
                                                        tmpoffset=(ulng)((tmpq-1)*94+(tmpw-1))*32;
                                                        WDFeed();
                                                        CHPCON=0x00;
                                                        rom2ram_hanzi(cnt_zi,tmpoffset);
                                                        }
                                                }
                                        else  //ASCII 碼
                                                {
                                                if(tmpi!=0)
                                                        {
                                                        tmpi=0;
                                                        break;
                                                        }
                                                else
                                                        {
                                                        cnt_zi++;
                                                        WDFeed();
                                                        //分析ASCii碼
						        CHPCON=0x00;
                                                        tp=codebuff[i];
                                                        rom2ram_ascii(cnt_zi,tp);
                                                        }
                                                }
                                        }
                                
                                }
                        if(f_leddisp==1)
                                {
                                f_leddisp=0;
                                if(f_over==1)
                                        {
                                        for(i=0;i<128;i++)
                                                {
                                                CHPCON=0x00;
                                                ram_ce=0;
                                                nDispRam[i]=rxbuff[i];
                                                ram_ce=1;
                                                }
                                        for(i=0;i<(length_d-128);i++)
                                                {
                                                CHPCON|=0x10;
                                                tmpi=rxbuff2[i];
                                                CHPCON=0x00;
                                                ram_ce=0;
                                                nDispRam[128+i]=tmpi;
                                                ram_ce=1;
                                                }
                                        for(i=0;i<(lengthled-length_d);i++)
                                                {
                                                ram_ce=0;
                                                nDispRam[length_d+i]=0;
                                                ram_ce=1;
                                                }
                                        }
                                else
                                        {
                                        for(i=0;i<length_d;i++)
                                                {
                                                ram_ce=0;
                                                nDispRam[i]=rxbuff[i];
                                                ram_ce=1;
                                                }
                                        for(i=0;i<(lengthled-length_d);i++)
                                                {
                                                ram_ce=0;
                                                nDispRam[i+length_d]=0;
                                                ram_ce=1;
                                                }
                                        }
                                }
                        f_fixdisp=0;
                        f_normdisp=0;
                        f_leddisp=0;
                        f_wrramover=1;
                        pin_wrram=0;
                        }
                if(f_anayrx==1) //接收完數據后,對所接收的數據進行分析
                        {
                        f_anayrx=0;
                        f_over=f_over128;
                        length_d=lengthdisp;
                        length_s=lengthsound;
                        style=dispstyle;
                        length_h=displength_h;
                        length_l=displength_l;
                        chk=rx_check;
                        check=0;
                        check^=style;
                        check^=length_h;
                        check^=length_l;
                        if(f_over==1)
                                {
                                for(i=0;i<128;i++)
                                        {
                                        check^=rxbuff[i];
                                        }
                                for(i=0;i<(length_d-127);i++)
                                       {
                                       check^=rxbuff2[i];
                                       }
                                }
                        else
                                {
                                for(i=0;i<length_d;i++)
                                        {
                                        check^=rxbuff[i];
                                        }
                                }
                        check^=length_s;
                        for(i=0;i<length_s;i++)
                                {
                                check^=soundbuff[i];
                                }
                        if(check!=chk)
                                {
                                f_transerr=1;
                                Tx();
                                }
                        else
                                {
                                f_transsuc=1;
                                Tx();
                                //分析語音部分
                                tp=length_s%2;
                                if(tp==0)
                                        {
                                        if(length_s==0x0)
                                                {
                                                f_handlesound=0;
                                                isd_ce=1;
                                                }
                                        else
                                                {
                                                //save sound
                                                for(i=0;i<length_s;i++)
                                                        {
                                                        tp=i%2;
                                                        if(tp==0)
                                                                {
                                                                if(soundbuff[i]>3)
                                                                        {
                                                                        f_err=1;
                                                                        break;
                                                                        }
                                                                }
                                                        }
                                                if(f_err==1)
                                                        {
                                                        f_handlesound=0;
                                                        }
                                                else
                                                        {
                                                        f_handlesound=1;
                                                        }
                                                }
                                        }
                                else
                                        {
                                        f_handlesound=0;
                                        }
                                if(style==full)
                                        {
                                        //全屏
                                        }
                                if(style==norm)
                                        {
                                        if((length_d<lengthnorm)||(length_d==lengthnorm))
                                                {
                                                if(length_d==0)
                                                        {
                                                        //清屏
                                                        pin_wrram=1;
                                                        f_wrramover=1;
                                                        }
                                                else
                                                        {
                                                        for(i=0;i<lengthnorm;i++)
                                                                {
                                                                if(i<length_d)
                                                                        {
                                                                        codebuff[i]=rxbuff[i];
                                                                        }
                                                                else
                                                                        {
                                                                        codebuff[i]=0x0;
                                                                        }
                                                                }
                                                        f_normdisp=1;
                                                        f_leddisp=0;
                                                        f_fixdisp=0;
                                                        f_t_delaywr=1;
                                                        pin_wrram=1;
                                                        }
                                                }
                                        }
                                if(style==led)
                                        {
                                        if((length_d<lengthled)||(length_d==lengthled))
                                                {
                                                if(length_d==0)
                                                        {
                                                        //清屏
                                                        pin_wrram=1;
                                                        f_wrramover=1;
                                                        }
                                                else
                                                        {
                                                        f_normdisp=0;
                                                        f_leddisp=1;
                                                        f_fixdisp=0;
                                                        f_t_delaywr=1;
                                                        pin_wrram=1;
                                                        }
                                                }

                                        }
                                if(style==fix)
                                        {
                                        for(i=0;i<12;i++)
                                                {
                                                if(rxbuff[i]>0x7f)
                                                        {
                                                        f_err=1;
                                                        break;
                                                        }
                                                }
                                        if(f_err==0)
                                                {
                                                if(length_d==12)
                                                        {
                                                        codebuff[0]=0xbd;
                                                        codebuff[1]=0xf0;
                                                        codebuff[2]=0xb6;
                                                        codebuff[3]=0xee;
                                                        codebuff[4]=rxbuff[0];
                                                        codebuff[5]=rxbuff[1];
                                                        codebuff[6]=rxbuff[2];
                                                        codebuff[7]=rxbuff[3];
                                                        codebuff[8]=rxbuff[4];
                                                        codebuff[9]=rxbuff[5];
                                                        codebuff[10]=0xd4;
                                                        codebuff[11]=0xaa;
                                                        codebuff[12]=0xd3;
                                                        codebuff[13]=0xe0;
                                                        codebuff[14]=0xb6;
                                                        codebuff[15]=0xee;

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
成人国产精品免费观看视频| 亚洲综合色区另类av| 精油按摩中文字幕久久| 精品国产在天天线2019| 国产成人精品免费一区二区| 国产精品久久久久四虎| 在线观看网站黄不卡| 五月婷婷激情综合网| 精品国一区二区三区| 成人性视频免费网站| 樱桃视频在线观看一区| 91麻豆精品久久久久蜜臀| 久久66热偷产精品| 亚洲三级免费观看| 91精品久久久久久久99蜜桃| 国产一区二区三区蝌蚪| 亚洲蜜桃精久久久久久久| 欧美精品视频www在线观看| 加勒比av一区二区| 亚洲男人的天堂av| 欧美mv日韩mv国产网站| 99久久伊人久久99| 蜜桃视频一区二区三区在线观看| 久久久精品一品道一区| 91久久精品一区二区| 免费成人美女在线观看| 国产精品久久久久久久岛一牛影视| 欧美影院一区二区三区| 裸体在线国模精品偷拍| 亚洲欧洲av一区二区三区久久| 欧美日韩国产免费一区二区| 国产一区91精品张津瑜| 亚洲午夜久久久久久久久电影院| 精品国产91久久久久久久妲己 | 日韩福利视频导航| 久久精品一区二区三区四区| 在线精品视频一区二区三四 | 久久久久久免费网| 欧美高清性hdvideosex| 97精品电影院| 激情亚洲综合在线| 亚洲午夜免费福利视频| 中文字幕一区二区在线观看| 欧美va日韩va| 欧美区视频在线观看| bt7086福利一区国产| 精品一区二区三区视频| 亚洲精品国产a| 国产欧美一区二区三区网站 | 黄网站免费久久| 一区二区三区毛片| 中文字幕成人av| 精品国产区一区| 欧美一区二区免费视频| 日本韩国精品一区二区在线观看| 成人免费电影视频| 国产91精品一区二区麻豆网站| 免费成人av在线播放| 日日夜夜精品视频免费| 亚洲一区二区三区影院| 中文字幕一区二区三区不卡在线 | 亚洲欧美综合色| 久久久久久9999| 精品国产欧美一区二区| 日韩欧美一卡二卡| 日韩视频免费直播| 91麻豆精品国产91久久久久| 欧美二区在线观看| 欧美精品色综合| 欧美一级视频精品观看| 91精品国产高清一区二区三区蜜臀| 欧美专区在线观看一区| 在线观看91精品国产入口| 91麻豆免费观看| 99国产精品久久久| heyzo一本久久综合| 99综合电影在线视频| av亚洲产国偷v产偷v自拍| 成人av网址在线观看| 99热99精品| 欧洲日韩一区二区三区| 欧美三级电影一区| 欧美日韩国产片| 91精品国产色综合久久不卡电影| 91精品国产综合久久蜜臀| 欧美一区二区三区在线电影| 日韩欧美久久久| 国产亚洲成年网址在线观看| 中文字幕+乱码+中文字幕一区| 日本一区二区久久| 亚洲精品自拍动漫在线| 亚洲丶国产丶欧美一区二区三区| 天使萌一区二区三区免费观看| 免费观看一级特黄欧美大片| 精品一区二区在线播放| 豆国产96在线|亚洲| 色综合夜色一区| 欧美精选一区二区| 精品精品欲导航| 国产精品入口麻豆原神| 一区二区三区欧美亚洲| 青青草国产精品亚洲专区无| 国产精品99久久不卡二区| 99久久久免费精品国产一区二区| 欧美性受xxxx黑人xyx性爽| 欧美一区二区播放| 亚洲欧美综合网| 免费精品视频最新在线| 99久久久国产精品免费蜜臀| 欧美日韩免费不卡视频一区二区三区 | 成人久久视频在线观看| 97久久超碰国产精品电影| 欧美高清www午色夜在线视频| 久久久噜噜噜久久中文字幕色伊伊| 亚洲欧美日韩中文字幕一区二区三区 | 91精品久久久久久蜜臀| 国产偷国产偷精品高清尤物| 亚洲综合一区二区| 国产成人午夜高潮毛片| 欧美日韩亚洲综合| 国产精品日韩精品欧美在线 | 九九精品一区二区| 色偷偷一区二区三区| 精品福利一区二区三区| 一片黄亚洲嫩模| 国产一区二区看久久| 欧美色电影在线| 亚洲欧洲一区二区三区| 美女视频黄久久| 在线观看欧美精品| 国产精品婷婷午夜在线观看| 三级亚洲高清视频| 91在线国产观看| 精品国产sm最大网站免费看| 亚洲aⅴ怡春院| 一本到不卡免费一区二区| 久久久久久影视| 美女免费视频一区| 欧美猛男超大videosgay| **欧美大码日韩| 国产成人自拍网| 欧美电影免费提供在线观看| 婷婷国产在线综合| 91福利社在线观看| 亚洲免费观看在线视频| 成人免费看的视频| 国产欧美一区二区精品仙草咪| 日本亚洲欧美天堂免费| 欧美色成人综合| 一区二区免费在线播放| 91香蕉国产在线观看软件| 国产精品全国免费观看高清| 激情综合色播激情啊| 欧美电影免费观看完整版| 蜜桃av噜噜一区| 欧美一区二区三区四区久久| 性做久久久久久免费观看欧美| 欧美亚洲日本国产| 亚洲综合免费观看高清在线观看| 99re亚洲国产精品| 亚洲色图一区二区三区| thepron国产精品| 一区免费观看视频| 成人av高清在线| 国产精品久久99| 成a人片亚洲日本久久| 中文字幕一区二区三区色视频| www.欧美日韩国产在线| 国产精品久久久久影院| 99精品热视频| 一区二区三区国产精品| 欧美亚洲动漫精品| 日韩精品午夜视频| 精品粉嫩aⅴ一区二区三区四区| 久久99精品国产麻豆婷婷洗澡| 精品美女一区二区三区| 国产精品亚洲一区二区三区在线| 欧美精品一区二区三区蜜桃| 国产综合成人久久大片91| 国产调教视频一区| www..com久久爱| 亚洲国产中文字幕| 欧美人妖巨大在线| 亚洲第一在线综合网站| www.欧美日韩国产在线| 亚洲精品美腿丝袜| 6080亚洲精品一区二区| 国产精品久久久久一区二区三区 | 99久久婷婷国产综合精品| 亚洲一级不卡视频| 日韩欧美一区中文| 国产精品亚洲第一区在线暖暖韩国| 国产精品免费视频网站| 日本韩国欧美一区| 久久99国产乱子伦精品免费| 国产精品久久久久久久久免费樱桃| 日本韩国欧美一区| 狠狠v欧美v日韩v亚洲ⅴ| 国产精品成人免费在线| 欧美久久久久久久久中文字幕|