新手入门
- 积分
- 7
- 金钱
- 7
- 注册时间
- 2016-1-8
- 在线时间
- 1 小时
|
2金钱
我用的是stm32f103RC,在外接led点阵模块(16*16)的时候,出现以下问题:1、拷进去程序但是led模块不显示
2、有时候会显示,但是位置不对,比如我希望第一行全亮,它会第四行亮。而且在这种情况下,每次关机重启显示的位置都不一样,并且在几次重启之后就会不显示。
led的资料放在附件了。以下是我写的测试程序
c文件:
[mw_shl_code=c,true]#include "sys.h"
#include "usart.h"
#include "delay.h"
#include "1.h"
int i=0;
int j=0;
void LED_Init(void)
{
RCC->APB2ENR|=1<<2; //使能PORTA时钟
RCC->APB2ENR|=1<<5; //使能PORTD时钟
GPIOA->CRH&=0x00000ff0;
GPIOA->CRH|=0x33333003;//PA8\11\12\13\14\15 推挽输出
GPIOA->ODR|=1<<8; //PA8 输出高
GPIOA->ODR|=1<<11; //PA11 输出高
GPIOA->ODR|=0xf<<12; //PA12\13\14\15 输出高
}
int main( void )
{
Stm32_Clock_Init(9);
delay_init(72);
uart_init(72, 9600);
LED_Init();
SER=1;
SRCLK=1;
RCLK=1;
CLK=1;
AB=1;
delay_ms(1);
AB=0;
delay_ms(1);
CLK=0;
delay_ms(1);
for(i=0;i<8;i++)
{
SRCLK=0;
delay_ms(1);
SER=0;
delay_ms(1);
SRCLK=1;
delay_ms(1);
}
CLK=1;
delay_ms(1);
while(1)
{
LED=0; //表示程序正在运行的led灯
delay_ms(200);
LED=1;
delay_ms(200);
}
}[/mw_shl_code]
.h文件
[mw_shl_code=c,true]#ifndef __1_H
#define __1_H
#include "sys.h"
#define SER PAout(11)
#define SRCLK PAout(12)
#define RCLK PAout(13)
#define CLK PAout(14)
#define AB PAout(15)
#define LED PAout(8)
#endif
[/mw_shl_code]
|
|