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

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

?? hms7202lib.c

?? 基于ARM核的HMS7202
?? C
字號:
#include "reg7202.h"


static int onemsLooptimes;
/****************************************************************/
/*   set the Programmable Input /Output module (PIO)	*/
/****************************************************************/
void set_gpio_pin()
{

/****************************************************************/
/*            set port a                              ***********/
/****************************************************************/

*(volatile unsigned short *)PioAmuxctl =0x0000;
*(volatile unsigned short *)PioAmuxsel =0x0000;
*(volatile unsigned short *)PioADDR    =0xff00;//置位則設置為輸入口
*(volatile unsigned short *)PioADR     =0xffff;//數據寄存器
*(volatile unsigned short *)PioAIM     =0x0000;//置位則設置相應引腳為中斷源
*(volatile unsigned short *)PioAIS     =0x0000;//無中斷
*(volatile unsigned short *)PioAIE     =0x0000;//設置為電平觸發模式
*(volatile unsigned short *)PioAIC     =0xffff;//清除中斷掛起位
*(volatile unsigned short *)PioAIP     =0xffff;//低電平有效

/****************************************************************/
/*            set port b                              ***********/
/****************************************************************/

*(volatile unsigned short *)PioBmuxctl =0x000;
*(volatile unsigned short *)PioBDDR    =0x035;
*(volatile unsigned short *)PioBDR     =0xfff;
*(volatile unsigned short *)PioBIM     =0x000;
*(volatile unsigned short *)PioBIS     =0x000;
*(volatile unsigned short *)PioBIE     =0x000;
*(volatile unsigned short *)PioBIC     =0xfff;
*(volatile unsigned short *)PioBIP     =0xfff;
/****************************************************************/
/*            set port c                              ***********/
/****************************************************************/

*(volatile unsigned short *)PioCmuxctl =0x000;
*(volatile unsigned short *)PioCDDR    =0x084;
*(volatile unsigned short *)PioCDR     =0x7ff;
*(volatile unsigned short *)PioCIM     =0x000;
*(volatile unsigned short *)PioCIS     =0x000;
*(volatile unsigned short *)PioCIE     =0x000;
*(volatile unsigned short *)PioCIC     =0x7ff;
*(volatile unsigned short *)PioCIP     =0x7ff;
/****************************************************************/
/*            set port d                              ***********/
/****************************************************************/

*(volatile unsigned short *)PioDmuxctl =0x000;
*(volatile unsigned short *)PioDDDR    =0x000;
*(volatile unsigned short *)PioDDR     =0x1ff;
*(volatile unsigned short *)PioDIM     =0x000;
*(volatile unsigned short *)PioDIS     =0x000;
*(volatile unsigned short *)PioDIE     =0x000;
*(volatile unsigned short *)PioDIC     =0x1ff;
*(volatile unsigned short *)PioDIP     =0x1ff;
/****************************************************************/
/*            set port e                              ***********/
/****************************************************************/

*(volatile unsigned *)PioEmuxctl =0x0fc0000;
*(volatile unsigned *)PioEDDR    =0x01c0000;
*(volatile unsigned *)PioEDR     =0x1ffffff;
*(volatile unsigned *)PioEIM     =0x0000000;
*(volatile unsigned *)PioEIS     =0x0000000;
*(volatile unsigned *)PioEIE     =0x0000000;
*(volatile unsigned *)PioEIC     =0x1ffffff;
*(volatile unsigned *)PioEIP     =0x1ffffff;
*(volatile unsigned char *)PioSwap    =0x0;

*(volatile unsigned char *)PioTictMDR =0x0;

}
#define _outw(addr, data) ((*(volatile int *)(addr)) = (data))
#define _inw(addr) (*(volatile int *)(addr))
#define _inb(addr) *(volatile char *)(addr)
#define _outb(addr, data) *(volatile char *)(addr) = data




static void pll_init()
{	
	int val;
	val = _inw(PmuClkCtl);
//	_outw(PmuClkCtl, val | PmuPLL1En | PmuPLL2En );
	_outw(PmuClkCtl, val | PmuPLL1En | PmuPLL2En | PmuPLL3Mute);
	
//	for(val=0; val< 0xf0000;val++); // delay 
	
	
}

/* Register Offset */
#define SERIAL_THR		0
#define SERIAL_RBR		0
#define SERIAL_DLL		0
#define SERIAL_DLM		0x04
#define SERIAL_IER		0x04
#define SERIAL_IIR		0x08
#define SERIAL_FCR		0x08
#define SERIAL_LCR		0x0C
#define SERIAL_MCR		0x10
#define SERIAL_LSR		0x14
#define SERIAL_MSR		0x18
#define SERIAL_SCR		0x1c

#define SERIAL_BASE	(0x80020000)	// Uart0
#define DEBUG_PORT_LEVEL 8

typedef enum {
	tty_baud1200,
	tty_baud2400,
	tty_baud4800,
	tty_baud9600,
	tty_baud19200,
	tty_baud38400,
	tty_baud57600,
	tty_baud115200,
	tty_baud230400
} tty_baud_t;

int baud_data[] = {
	192,  // tty_baud1200
	96,   // tty_baud2400
	48,   // tty_baud4800
	24,   // tty_baud9600
	12,   // tty_baud19200
	6,    // tty_baud38400
	4,    // tty_baud57600
	2,    // tty_baud115200
	1     // tty_baud230400
};

typedef enum {TEXT_MODE, BINARY_MODE } ser_mode_t;

static int ser_opened = 0;
static ser_mode_t ser_mode = TEXT_MODE;
static unsigned int ser_base = SERIAL_BASE;
static unsigned int ser_level = DEBUG_PORT_LEVEL;
static tty_baud_t cur_baud = tty_baud57600;

unsigned char serial_inb(int offset)
{
	unsigned char ch= _inb(ser_base + offset);
	return ch;
}

int ser_open()
{
	if(ser_opened) return 0;

	ser_base = SERIAL_BASE;//0x80020000 Uart0
	ser_level = DEBUG_PORT_LEVEL;//0x8
	cur_baud = tty_baud57600;


	_outb(ser_base+0x30,1);//使能UART0
	_outw(0x8002301c, 0xffff9f9f);
	_outw(0x800230A4, 0x6060);//PA14:USOUT3,PA13:USIN3,PA6:USOUT2,PA5:USIN2

	_outb(ser_base+SERIAL_LCR,0x80);//置位 DLAB 
	
	_outb(ser_base+SERIAL_DLL,baud_data[cur_baud]);
	_outb(ser_base+SERIAL_DLM,0x0);//設置波特率.DLL=4,即波特率=57600
	_outb(ser_base+SERIAL_LCR,0x03);//DLAB 清0,8位字長,1_stop,無奇偶校驗
	_outb(ser_base+SERIAL_FCR,0x01);//使能FIFO
	_outb(ser_base+SERIAL_IER,0x00);//禁止UART中斷
	_outb(ser_base+SERIAL_MCR,0x03);//使NRTS和NDTR信號輸出為0,nUDTR和nURTS信號輸出為0
	                             //即UART已準備好接收和發送

	ser_opened = 1;
	return 1;
}

void ser_close()
{
	ser_opened = 0;
}



#include <string.h>
#include <stdarg.h>

char ser_getchar()
{
	char ch;
	int lsr;
	if(ser_opened == 0)
		return -1;

	do {
		lsr = (int) serial_inb(SERIAL_LSR);
	}while( (lsr&0x1) != 0x1);

	ch = serial_inb(SERIAL_RBR);
	return ch;
}
static int pseqno = 0;

void ser_putchar(char ch)
{
	int lsr;

	if(ser_opened == 0)
		return;
	pseqno = 0;
	do {
		lsr = serial_inb(SERIAL_LSR);
	}while( (lsr&0x60) != 0x60);
	_outb(ser_base+SERIAL_THR,ch);
	if(ser_mode == TEXT_MODE && ch == '\n')
		_outb(ser_base+SERIAL_THR,'\r');
}
int ser_printf(const char *format, ...)
{
    char buff[256];
    int chars, i;
    va_list ap;
    va_start(ap, format);
    chars = vsprintf(buff, format, ap);
    va_end(ap);

    i = 0;
    while (buff[i])
		ser_putchar(buff[i++]);

    return 0;
}

void system_init(void)
{
    set_gpio_pin();
    
   	pll_init();
   	
   	ser_open();
   	
    ser_printf("\nHMS30C7202系統初始化完畢\n");
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
久久久美女艺术照精彩视频福利播放| 日本电影欧美片| 图片区小说区国产精品视频| 中文字幕中文字幕一区| 国产精品天美传媒沈樵| 国产亚洲精品aa| 国产精品福利av| 亚洲欧美日本在线| 亚洲图片欧美视频| 天堂蜜桃一区二区三区| 免费观看91视频大全| 另类欧美日韩国产在线| 国产综合色视频| 狠狠色丁香婷综合久久| 国产精品白丝av| 91丝袜美女网| youjizz国产精品| 欧美色综合天天久久综合精品| av电影在线观看不卡| 国产精品99久久久久久久vr| 国产成人啪午夜精品网站男同| 不卡视频免费播放| 欧美日韩中文国产| 日韩欧美国产一二三区| 久久久亚洲欧洲日产国码αv| 亚洲国产成人私人影院tom | 偷窥国产亚洲免费视频| 日本色综合中文字幕| 国产尤物一区二区| 粉嫩欧美一区二区三区高清影视| 91丨porny丨最新| 欧美美女网站色| 久久视频一区二区| 中文字幕在线不卡一区二区三区| 亚洲午夜日本在线观看| 国产真实精品久久二三区| 一本色道久久综合亚洲aⅴ蜜桃| 欧美日韩免费在线视频| 国产女主播一区| 婷婷一区二区三区| aaa欧美大片| 欧美电影免费观看高清完整版在| 国产精品国产自产拍在线| 日韩不卡手机在线v区| 不卡av在线网| 精品久久久久香蕉网| 专区另类欧美日韩| 国产又黄又大久久| 欧美一区二区三区四区高清| 国产精品久久久久久久久免费桃花 | 亚洲免费av网站| 国产精品夜夜爽| 日韩一二三区视频| 一区二区三区视频在线看| 国产精品香蕉一区二区三区| 欧美一区二区三区电影| 一区二区成人在线观看| 成人国产电影网| 国产三级精品视频| 黄页网站大全一区二区| 91麻豆精品国产91久久久久久| 一区二区三区四区国产精品| 成人手机电影网| 国产清纯美女被跳蛋高潮一区二区久久w| 视频一区视频二区中文| 色综合一个色综合| 亚洲男同1069视频| 99视频精品全部免费在线| 国产情人综合久久777777| 国产在线播放一区二区三区| 精品不卡在线视频| 激情综合网av| 久久中文娱乐网| 国产成人综合在线播放| 国产亚洲精品aa午夜观看| 国产盗摄视频一区二区三区| 久久久久久免费网| 国产精品白丝jk黑袜喷水| 国产清纯在线一区二区www| 春色校园综合激情亚洲| 中文字幕中文字幕中文字幕亚洲无线| 99久久精品国产观看| 亚洲免费av观看| 欧美日韩国产a| 美腿丝袜亚洲一区| 久久久久久久精| 丁香桃色午夜亚洲一区二区三区| 国产日产欧产精品推荐色| 国产不卡视频在线播放| **性色生活片久久毛片| 色八戒一区二区三区| 五月综合激情日本mⅴ| 欧美电影免费观看高清完整版在线| 久久99久久久久| 国产精品久久久一本精品| 一本大道久久a久久精二百| 亚洲成年人网站在线观看| 日韩色在线观看| 成年人午夜久久久| 亚洲高清视频在线| 精品国产亚洲在线| 99久久精品免费看国产| 天天综合日日夜夜精品| 精品伦理精品一区| av不卡免费电影| 青青草国产成人99久久| 中文字幕一区二区三区四区| 欧美日韩一卡二卡三卡 | 色噜噜狠狠色综合欧洲selulu| 视频一区在线视频| 国产精品福利电影一区二区三区四区| 在线视频国内自拍亚洲视频| 国内一区二区视频| 一区二区三区不卡视频| 26uuu久久天堂性欧美| 日本道免费精品一区二区三区| 麻豆国产欧美日韩综合精品二区| 国产精品麻豆久久久| 5月丁香婷婷综合| 91啪亚洲精品| 国产麻豆一精品一av一免费| 亚洲成人免费视| 国产精品久久99| 久久一二三国产| 欧美一区二区三区视频| 91九色02白丝porn| 不卡视频一二三| 丁香五精品蜜臀久久久久99网站| 日韩av中文在线观看| 亚洲美腿欧美偷拍| 国产精品久久久爽爽爽麻豆色哟哟| 69久久夜色精品国产69蝌蚪网| 99国产精品久久| 国产99精品视频| 国产一区二区福利视频| 丝袜国产日韩另类美女| 一区二区三区日本| 中文字幕精品一区| 久久毛片高清国产| 精品少妇一区二区三区在线播放| 91免费观看国产| 成人激情午夜影院| 粉嫩嫩av羞羞动漫久久久| 久久99在线观看| 日本aⅴ精品一区二区三区 | 日韩一级在线观看| 欧美精品久久99久久在免费线| 欧美在线观看你懂的| 97久久精品人人澡人人爽| 成人av综合一区| thepron国产精品| 99久久国产免费看| 91视频免费播放| 在线观看日韩一区| 欧美色网站导航| 7777精品伊人久久久大香线蕉 | 欧美挠脚心视频网站| 欧美性色综合网| 欧美日韩一本到| 91麻豆精品国产无毒不卡在线观看| 欧美日韩在线精品一区二区三区激情 | 国v精品久久久网| 成人av在线影院| 色婷婷国产精品久久包臀| 欧美午夜影院一区| 欧美日韩第一区日日骚| 欧美一区二区在线免费播放| 欧美xxxx在线观看| 国产日韩欧美综合一区| 中文字幕一区二区三区四区不卡 | 久久亚洲综合av| 亚洲国产成人私人影院tom| 自拍偷拍欧美激情| 亚洲成人激情自拍| 六月丁香综合在线视频| 国产成人在线网站| 欧美在线视频不卡| 精品国产乱码久久久久久影片| 国产精品美女久久久久久久久久久| 亚洲人亚洲人成电影网站色| 亚洲成人av福利| 国产一区二区三区观看| 91在线国产福利| 日韩一区国产二区欧美三区| 久久精品视频在线看| 一区av在线播放| 国产综合色精品一区二区三区| 91亚洲国产成人精品一区二区三 | 国产成人精品三级麻豆| 一本大道久久a久久精品综合| 日韩欧美一级特黄在线播放| 国产亚洲欧美中文| 亚洲mv在线观看| 成人性生交大片免费| 在线不卡a资源高清| 国产精品理论在线观看| 麻豆传媒一区二区三区| 色香蕉久久蜜桃| 日本一区二区三区电影| 日韩精品亚洲专区|