本帖最后由 lss1985 于 2017-5-17 18:44 编辑
程序如下
uint8_tdisp[10]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};
void GPIO_Init(void) { GPIO_InitTypeDef GPIO_InitStructure;
RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOA,ENABLE);
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_9|GPIO_Pin_11|GPIO_Pin_12; GPIO_InitStructure.GPIO_Mode =GPIO_Mode_OUT; GPIO_InitStructure.GPIO_OType =GPIO_OType_PP; GPIO_InitStructure.GPIO_Speed =GPIO_Speed_100MHz;//100MHz GPIO_InitStructure.GPIO_PuPd = GPIO_PuPd_UP; GPIO_Init(GPIOA, &GPIO_InitStructure); }
#define SEL PAout(11) PA11片选功能 #define TXD PAout(9) PA9数据发送端 #define XCK PAout(12) PA12模拟时钟
void Sendbyte(uint8_t byte)发送程序 { uint8_t i,ch ; ch=disp[byte]; for(i=0;i<8;i++) { XCK=0; TXD=ch&0x80; XCK=1; ch<<=1; } }
int main(void) {
delay_init(168); GPIO_Init(); delay_ms(1000); SEL=0; Sendbyte(3);
} 大家看看有啥问题?数码管只能显示8,就是全亮 原理图在下面,SEL是选位的,按键请无视
|