?? ch372v_init_avr.c~
字號:
/*********************************************************/
////->>> main.C: CH372V的初始化演示主程序
////->>> CH372V_Init_AVR.C: CH372V的初始化程序
////->>> CH372V_Init_AVR.h
/*********************************************************/
#include <iom128v.h>
#include "CH372V_Init_AVR.h"
#include "delay.h"
unsigned char WatchPoint,temp;
//發送單字節命令
void CH372V_SendCMD1(unsigned char Command) {
CH372V_DIR = 0xFF;
CH372V_OUT = Command; //發送數據
CH372V_WR_LO; //WR有效
CH372V_RD_HI; //RD無效
CH372V_A0_HI; //A0=1命令
CH372V_CS_LO; //CS有效
#asm("NOP");//asm("NOP");asm("NOP");
CH372V_WR_HI; //WR無效
CH372V_CS_HI; //CS無效
}
void CH372V_SendDAT1(unsigned char DAT) {
CH372V_DIR = 0xFF;
CH372V_OUT = DAT; //發送數據
CH372V_RD_HI; //RD無效
CH372V_A0_LO; //A0=0數據
CH372V_WR_LO; //WR有效
CH372V_CS_LO; //CS有效
#asm("NOP");//asm("NOP");asm("NOP");
CH372V_WR_HI; //WR無效
CH372V_CS_HI; //CS無效
}
unsigned char CH372V_ReadDAT1(void)
{
unsigned char DAT=0;
CH372V_DIR = 0x00;
CH372V_A0_LO; //A0=0數據
CH372V_WR_HI; //WR無效
CH372V_CS_LO; //CS有效
CH372V_RD_LO; //RD有效
#asm("NOP");//asm("NOP");asm("NOP");
DAT = CH372V_IN; //讀取數據
CH372V_RD_HI; //RD無效
CH372V_CS_HI; //CS無效
CH372V_DIR = 0xFF;
return DAT;
}
//設置VID和PID
void CH372V_SetVIDPID(void)
{
CH372V_SendCMD1(CMD_SET_USB_ID);
temp=(unsigned char)(CH372V_VID&0xff);
CH372V_SendDAT1(temp);
temp=(unsigned char)((CH372V_VID>>8)&0xff);
CH372V_SendDAT1(temp);
temp=(unsigned char)(CH372V_PID&0xff);
CH372V_SendDAT1(temp);
temp=(unsigned char)((CH372V_PID>>8)&0xff);
CH372V_SendDAT1(temp);
}
void CH372V_Init(void) {
//首先初始化端口
CH372V_DIR |= 0xFF;
CH372V_WR_HI; //WR無效
CH372V_WR_DIR |= CH372V_WR;
CH372V_RD_HI; //RD無效
CH372V_RD_DIR |= CH372V_RD;
CH372V_CS_HI; //CS無效
CH372V_CS_DIR |= CH372V_CS;
CH372V_A0_HI; //A0=1命令
CH372V_A0_DIR |= CH372V_A0;
//第一部分硬件復位
CH372V_SendCMD1(CMD_RESET_ALL);
delay1ms(40); //延時40ms
//第二部分設置VID和PID
CH372V_SetVIDPID();
//第三部分設置USB工作模式
CH372V_SendCMD1(CMD_SET_USB_MODE);
CH372V_SendDAT1(0x02); //內部固件模式
WatchPoint =CH372V_ReadDAT1();
//asm("NOP"); //在這里加入斷點觀察WatchPoint
CH372V_INT_DIR();
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -