/**************************************
* Ãèêö £oóÃstm32¿ØÖÆledÏÔê¾Æá
* êμÑéƽ쨣oMINI STM32¿a·¢°å »ùóúSTM32F103C8T6
* ¿a°æ±¾ £oST3.0.0
*********************************************************/
#include "stm32f10x.h"
#include "led.h"
#include "time.h"
#include "SysTick.h"
int k=0;
volatile u32 time;
///**********¾«è·Ñóê±**********/
/[img]file:///C:UsersjsuAppDataLocalTemp[LC3U)F{0XCAB)
LKNIT0K@G.gif[/img]oid Delay_mS(uint32_t TimePara)
// {
//
// uint16_t i;
// while(TimePara--)
// {
// i=100;
// while(i--) ;
// }
// }
uint8_t Hanzi[][2] = { 0x10,0x00,0x13,0xF8,0x10,0x10,0x10,0x20,
0xFC,0x40,0x10,0x84,0x33,0xFE,0x38,0xA4,
0x54,0xA4,0x50,0xA4,0x91,0x24,0x11,0x44,
0x12,0x44,0x14,0x84,0x11,0x28,0x10,0x10,}
/****************μãááÖ÷3ìDò£¬ÇåÆáoóoìμÆè«áá********************/
int main(void)
{
SystemInit(); // ÅäÖÃÏμí3ê±ÖóÎa72M
LED_GPIO_Config();//GPIO3õê¼»ˉ
TIM2_NVIC_Configuration(); //TIM2 ¶¨ê±ÅäÖÃ
TIM2_Configuration();
EN(1);
//Clean_ICN2025();//ÇåËø′æDÅÏ¢£¬oìμÆè«Ãe
while(1)
{
for(k=0;k<16;k++)
{
ICN2025_Send_Date_Up(Hanzi[k]);
ICN_2012();
}
}
}
/**************áDêy¾Y*************/
void ICN2025_Send_Date_Up(uint8_t buff[2])
{
int i,j,p;
uint8_t tmp;
unsigned char *point;
for(i=0;i<112;i++)
{
{
R1(0);
//Delay_mS(1);
CLK(1);
//Delay_mS(1);
CLK(0);
}
}
STB(1);
//Delay_mS(1);
STB(0);
for(i=0;i<2;i++)
{
tmp = buff
;
for(j = 0 ; j< 8;j++)
{
R1(~(tmp << j) & 0x80);
//Delay_mS(1);
CLK(1);
//Delay_mS(1);
CLK(0);
}
}
STB(1);
//Delay_mS(1);
STB(0);
}
/***DDÑ¡*******/
void ICN_2012(void)
{
uint8_t tmp ;
{
tmp = k ;
LA((tmp >> 0) & 0x01);
LB((tmp >> 1) & 0x01);
LC((tmp >> 2) & 0x01);
LD((tmp >> 3) & 0x01);
}
}
这是主函数,其实道理非常简单,一个行选,一个列选,控制好时序就行了。
一周热门 更多>