⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 mdls40466.c

📁 AVR单片机C语言编程及应用实例 适合初学者的学习研究 其中包含Atmega16中文资料及Protel部分电路图
💻 C
字号:
#include <iom16v.h>
#include <macros.h>
#define  uchar unsigned char
#define  uint  unsigned int
#pragma data:code 
const uchar table[]="I LIKE AVR !";
const uchar table1[]="WWW.TXMCU.COM";
const uchar table2[]="I LOVE YOU !";
const uchar table3[]="WWW.ZJSRU.NET";
uchar k;

void delay(uint ms)
{
        uint i,j;
	for(i=0;i<ms;i++)
	   {
	   for(j=0;j<1141;j++);
       }
}
void write_com(uchar com)
{
       PORTD&=~BIT(4);
	   PORTD&=~BIT(5);
	   PORTB=com;
	   PORTD|=BIT(k);
	   delay(1);
	   PORTD&=~BIT(k);
}

void write_dat(uchar dat)
{     
       PORTD|=BIT(4);
	   PORTD&=~BIT(5);
	   PORTB=dat;
	   PORTD|=BIT(k);
	   delay(1);
	   PORTD&=~BIT(k);
}
void  main()
{
      uchar i;
	  for(k=6;k<8;k++)
	  {
	  DDRB=0XFF;
	  DDRD|=BIT(4)|BIT(5)|BIT(k);
	  PORTD&=~BIT(k);
	  write_com(0X38);
	  delay(5);
	  write_com(0X01);/*清屏*/
	  delay(5);
	  write_com(0X0C);
	  delay(5);
	  write_com(0X06);
	  delay(5);
	  write_com(0X80+27);
	  delay(5);
	  if(k==6)
	  for(i=0;i<12;i++)
	  {
	     write_dat(table[i]);
		 delay(50);
	  }
      else
	  	  for(i=0;i<12;i++)
	  {
	     write_dat(table2[i]);
		 delay(50);
	  }
	  write_com(0X80+0X43);
	  delay(5);
       if(k==6)
	    for(i=0;i<13;i++)
	  {
	     write_dat(table1[i]);
		 delay(5);
	  }
      else
	    for(i=0;i<13;i++)
	  {
	     write_dat(table3[i]);
		 delay(5);
	  }
	  for(i=0;i<10;i++)
	  {
	     write_com(0X1D);/*左移*/
		 delay(500);
	  }
	  }
}

⌨️ 快捷键说明

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