新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > AVR與VB通信模擬量輸入簡單程序

        AVR與VB通信模擬量輸入簡單程序

        作者: 時間:2016-11-30 來源:網絡 收藏

        void uart_init()
        {
        UCSRB=0x00; //串口不使能
        UCSRA=0x02; //串口倍速模式
        UCSRC=0x06; //數據長度設置為8位
        UBRRL=0x67; //串口設置為9600波特率
        UBRRH=0x00;
        UCSRB=0x98; //串口接受和發送使能,接受中斷使能
        }

        void uart_send(uchar k) //串口發送函數
        {
        while(!(UCSRA&(1< UDR=k;
        }

        uchar uart_receive()
        {
        while(!(UCSRA&(1<return UDR;
        }

        void send_number(uint k)
        {
        uart_send((uchar)(k>>8));
        uart_send((uchar)(k));
        }

        #pragma vector = 0x2c
        __interrupt void uart_rxc()
        {
        datt=UDR;
        if(datt==a)PORTB=0xff;
        else PORTB=0x00;
        }


        void main()
        {
        port_init();
        uart_init();
        time0_init();
        adc_init();
        SREG=0x80;
        while(1)
        {
        adc_val=adc_vert();
        delay(50000);
        delay(50000);
        delay(50000);
        send_number(adc_val);
        }
        }

        //----------------------VB代碼----------------------------
        Private Sub Command1_Click()
        MSComm1.CommPort = 4
        MSComm1.PortOpen = True
        MSComm1.InputMode = comInputModeBinary

        MSComm1.InputLen = 0

        Private Sub MSComm1_OnComm()
        Dim bytereceive() As Byte 定義字節數組
        Dim strbuf As String 定義字符串變量
        Select Case MSComm1.CommEvent
        Case comEvReceive 接受事件發生
        Text2 = MSComm1.InBufferCount 顯示接受緩沖區字節數
        strbuf = MSComm1.Input 從輸入緩沖區讀取字符
        bytereceive() = strbuf 字符串賦值給字符數組,低字節在前,高字節在后
        Dim i As Integer
        For i = 0 To UBound(bytereceive) UBound返回數組可用的最大長度
        If Len(Hex(bytereceive(i))) = 1 Then
        strdata = strdata & "0" & Hex(bytereceive(i))
        Else
        strdata = strdata & Hex(bytereceive(i))
        End If
        Next
        Text1.Text = strdata 十六進制顯示

        Text3.Text = Val("&H" & strdata) 十進制顯示
        strdata = ""

        End Select

        End Sub

        上一頁 1 2 下一頁

        評論


        技術專區

        關閉
        主站蜘蛛池模板: 泾川县| 灵山县| 博罗县| 宁国市| 富平县| 南木林县| 湛江市| 深州市| 吉林省| 邢台市| 北川| 鄂尔多斯市| 大田县| 曲麻莱县| 湘乡市| 江安县| 保山市| 乌恰县| 伊吾县| 巴彦县| 阳谷县| 泉州市| 行唐县| 类乌齐县| 六盘水市| 洪江市| 土默特左旗| 宁德市| 花莲县| 醴陵市| 娱乐| 紫阳县| 额尔古纳市| 三河市| 高密市| 银川市| 永年县| 宁波市| 宜阳县| 自治县| 泊头市|