cs8900a.c

来自「本代码是基于三星2410的嵌入式开发实验程序代码,包括:ADC,CS8900A,」· C语言 代码 · 共 42 行

C
42
字号
#include "2410addr.h"

#define EthBaseAddr    (*(volatile unsigned short*)0x19000000)
#define EthIOAddr      (*(volatile unsigned short*)0x19000300)
#define EthPPP         (*(volatile unsigned short*)0x1900030a)
#define EthPPD0        (*(volatile unsigned short*)0x1900030c)


void Main(void){ 
    ChangeClockDivider(1,1);          // 1:2:4    
    ChangeMPllValue(0xa1,0x3,0x1);    // FCLK=202.8MHz  
    Port_Init();                      //GPIO口设置,包括将GPH对应口设置成UART功能
    Uart_Init(0,115200);              //串口初始化
    Uart_Select(0);                   //选择UART0作为console
    Delay(0);                         // 校准Delay()延时函数
    Uart_Printf("\nAN2410SSB CS8900A Test Program\n");
    rBWSCON = rBWSCON & ~(0xf << 12) | (0xd << 12);//nGCS3=nUB/nLB(sSBHE),nWAIT,16-bit
    rBANKCON3 = (0 << 13) | (3 << 11) | (7 << 8) | (1 << 6) | (0 << 4) | (3 << 2) | 0;
//Bank3总线配置也可直接在启动代码中完成
    while (1){
        EthPPP = 0;//写寄存器地址到PacketPage Pointer。
        Uart_Printf("CS8900A ChipID1 is %x\n", EthPPD0); //读取前16位:630e
        Delay(500);
        EthPPP = 2;
        Uart_Printf("CS8900A ChipID2 is %x\n", EthPPD0); //读取后16位:a00
        Delay(500);
    }
}













⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?