串列埠通訊實戰

2022-09-07 00:54:21 字數 2149 閱讀 6166

start.s

/*

* 檔名: start.s

* 描述: 演示串列埠通訊 */

#define wtcon 0xe2700000

#define svc_stack 0xd0037d80.

global _start //

把_start鏈結屬性改為外部,這樣其他檔案就可以看見_start了

_start:

//第1步:關看門狗(向wtcon的bit5寫入0即可)

ldr r0, =wtcon

ldr r1, =0x0

str r1, [r0]

//第2步:設定時鐘

bl clock_init

//第3步:設定svc棧

ldr sp, =svc_stack

//第4步:開/關icache

mrc p15,0,r0,c1,c0,0; //

讀出cp15的c1到r0中

//bic r0, r0, #(1<<12)

//bit12 置0 關icache

orr r0, r0, #(1

<<12) //

bit12 置1 開icache

mcr p15,0,r0,c1,c0,0

;

bl main

//從這裡之後就可以開始呼叫c程式了

//bl led_blink

//led_blink是c語言實現的乙個函式

//彙編最後的這個死迴圈不能丟

b .

main.c

void main(void

)}

uart.c

#define gpa0con       0xe0200000

#define ulcon0 0xe2900000

#define ucon0 0xe2900004

#define umcon0 0xe290000c

#define ufcon0 0xe2900008

#define ubrdiv0 0xe2900028

#define udivslot0 0xe290002c

#define utrstat0 0xe2900010

#define utxh0 0xe2900020

#define urxh0 0xe2900024

#define rgpa0con (*(volatile unsigned int *)gpa0con)

#define rulcon0 (*(volatile unsigned int *)ulcon0)

#define rucon0 (*(volatile unsigned int *)ucon0)

#define rumcon0 (*(volatile unsigned int *)umcon0)

#define rufcon0 (*(volatile unsigned int *)ufcon0)

#define rubrdiv0 (*(volatile unsigned int *)ubrdiv0)

#define rudivslot0 (*(volatile unsigned int *)udivslot0)

#define rutrstat0 (*(volatile unsigned int *)utrstat0)

#define rutxh0 (*(volatile unsigned int *)utxh0)

#define rurxh0 (*(volatile unsigned int *)urxh0)

//串列埠初始化程式

void uart_init(void)//

串列埠傳送程式,傳送乙個位元組

void uart_putc(char

c)//

串列埠接收程式,輪訓方式,

char uart_getc(void

)

串列埠通訊實現

前段時間編寫了串列埠通訊的 用的是rs 232資料線 include 標準輸入輸出定義 include 標準函式庫定義 include unix 標準函式定義 include include include include include include define dev dev ttys1 d...

串列埠通訊實驗

晶振12mhz,波特率1200,程式啟動後微控制器主動發出hello server,pc使用串列埠助手應答微控制器,當微控制器收到pc發來的資料aah後,將30h 3fh的16個位元組傳送給pc,當51收到e0h時就發40h 5fh的32個位元組資料,若微控制器收到其他資料後,則不做任何修改返回pc...

VC 串列埠通訊實現方式

利用師姐qt2440開發板控制機械臂,串列埠通訊出現問題,找到usb轉串列埠後,任然找不到相應的驅動。初步打算用微控制器實現。1.基於active控制項的方式 mscomm 優點是 直接利用控制項,在串列埠有資料到達時,會促發相應的事件響應函式,然後你可以在實踐響應函式裡,進行資料的讀取。缺點是 資...