GCC AVR实验之一:流水灯

发布者:GoldenHarmony最新更新时间:2015-11-12 来源: eefocus关键字:GCC  AVR实验  流水灯 手机看文章 扫描二维码
随时随地手机看文章
/**********************************************************************
* 文件名称: main.c
* 程序作者: Kevin Chin
* 程序版本: V1.0
* 编制日期: 2010/06/28
* 功能描述: 8位LED循环点亮
* 编译器:WinAVR-20090313
* 芯片:ATmega16,外部11.0592MHZ晶振
* 技术支持:http://www.cepark.com
**********************************************************************/
#include 
#include 

int main(void)
{
    PORTB = 0xFF;
    DDRB = 0xFF;    //端口设置

    unsigned char i;    

    while(1)
    {
        for(i = 0; i < 8; i++ )
        {
            PORTB = ~(1<             _delay_ms(200);
        }
        

    }
}
关键字:GCC  AVR实验  流水灯 引用地址:GCC AVR实验之一:流水灯

上一篇:WinAVR新手必读
下一篇:AVR熔丝位配置

推荐阅读最新更新时间:2024-03-16 14:39

用c语言编写单片机流水灯程序详解
用C语言编写的单片机流水灯程序的软件和硬件,可以让八个LED轮流点亮,每个灯点亮和熄灭时间均为1秒。是利用单片机I/O口控制外部设备的简单例子。当然,在你掌握了本程序后,完全可以充分发挥你的想象,改变一下程序内容和灯的接法(比如用光耦驱动继电器来控制霓虹灯),做出各种变化非凡的大型灯光广告牌。 一、硬件电路 因为电路用单片机控制,所以电路非常简洁。其电路原理图见下图,印制板图如下图所示。 电路的核心部分是AT89C2051单片机,前面提到它有Pl和P3两组I/O口,我们这里只用到Pl口,共8个引脚。图中Cl、R9组成典型的上电复位(即在加电时单片机复位)电路,XTAL、C2、C3与AT89C2051片内振荡电路组成时钟振荡器
[单片机]
用c语言编写单片机<font color='red'>流水灯</font>程序详解
【单片机】Keil+Proteus流水灯(模块化编程)
本篇文章: 主要是Keil的模块化编程,同时实现了一个小实验,通过Keil模块化编程来实现流水灯(设计了三种流水方式)。 进入正文: 一、Proteus仿真图 1)在编写代码的时候,我们首先要做的就是绘图,绘制好模型图之后,才可以编写对应的代码。首先,在Proteus创建一个工程(PS:新手请看:Proteus和Keil分别创建单片机工程) 2)根据自己的要求,绘制指定的图形。此次做的是流水灯,请看图: (PS:如果对画图有难度的话,请查看:Proteus画图) 3)绘制好Proteus之后,开始Keil部分。 二、Keil的模块化编程 Keil模块化编程:对代码分开管理,每一部分都是一个完整的代码,需要使用的时候,最
[单片机]
【单片机】Keil+Proteus<font color='red'>流水灯</font>(模块化编程)
AVR_GCC_EEPROM程序
源码如下: #include avr/io.h #include avr/interrupt.h #include avr/eeprom.h int main() { unsigned char val; eeprom_busy_wait(); //等待EEPROM读/写就绪 eeprom_write_byte(0,0xaa); //将0XAA写入到单片机内部EEPROM的0地址处 eeprom_busy_wait(); //等待EEPROM读/写就绪 val=eeprom_read_byte(0); //从单片机内部EEPROM的0地址处读取一字节赋给变量val while(1) { ; //主程序 } }
[单片机]
如何实现键盘自由控制二极管流水灯
#include reg52.h //流水灯 从上到下点亮 然后熄灭; 再从下到上点亮 然后熄灭 sbit Key1=P2^7; //启动 停止 定时器T0 sbit Key2=P2^6; //停止 定时器T0, 通过键盘实现 流水灯 从上到下点亮 然后熄灭 sbit Key3=P2^5; //停止 定时器T0, 通过键盘实现 流水灯 从下到上点亮 然后熄灭 unsigned char t=0; unsigned char i=0; void Delay(unsigned int i) //延时 { unsigned char j; for( ; i 0; i--) for(j=1
[单片机]
基于AVR单片机的实验加载闭环控制系统
摘要:针对科研实验中对拉压千斤顶加栽过程控制的需要,采用ATmega128单片机控制步进电机进而实现对执行系统的电动泵站实行自动控制。对力和位移的数据采集与处理及用步进电机控制电动泵站手柄的技术细节作了重点描述。通过单片机的A/D变换器对AMP放大模块采集的电桥信号作量化处理,千斤顶的操控手柄位置依电动油泵阀门开启的方向和大小作若干定位,单片机根据力或位移传感器信号,实时控制步进电机驱动手柄旋转到相应探控位置。 关键词:电动油泵;千斤顶;传感器;AVR单片机;A/D变换;串口通信;VB编程 分离式液压千斤顶在生产建设、科学实验等各类工程结构加载工作中具有广泛的用途。 该设备一般由电动高压油泵+压(拉)千斤顶组成,本文论及的
[工业控制]
基于<font color='red'>AVR</font>单片机的<font color='red'>实验</font>加载闭环控制系统
avr单片机八位流水灯程序
八位流水灯程序 单片机源程序如下: #include iom16v.h #define uint unsigned int #define uchar unsigned char void Delay_ms(uint k) { uint i,j; for(;k 0;k--) for(i=142;i 0;i--) for(j=2;j 0;j--); } void port_init(void) { DDRD=0xff; PORTD=0xff; } void main(void) { uchar temp,i; port_i
[单片机]
玩转mini2440开发板之【64位Ubuntu系统无法运行arm-linux-gcc
前段时间由于工作原因,将虚拟机重装了,由原来的Ubuntu 12.04(32位)升级成了Ubuntu 16.04(64位)。自然,原来安装在Ubuntu 12.04中的所有mini2440开发板相关的工具和源码,都要重装一遍。今天刚好得空,于是就开始整。 第一步当然是安装交叉编译器了,仍然是友善之臂arm-linux-gcc 4.4.3的版本,按照官方手册的步骤,直接解压,然后添加环境变量,一气呵成。可是,当我注销完重新登录之后,输入命令时,系统却给出了一个出错提示: leon@Ubuntu:~$ arm-linux-gcc -v /opt/FriendlyARM/toolschain/4.4.3/bin/arm-linu
[单片机]
流水灯来回点亮程序(汇编和C)
前头看单片机c语言,忘了汇编,这几天跟几位兄弟去给下面的师弟师妹上实验课,用的是wave的实验箱。用汇编语言编程。算是一个复习。 汇编: ORG 0000H JMP MAIN ORG 30H MAIN: MOV A,#0FFH CLR C MOV R2,#08H LOOP1: ; 实验中二极管低电平点亮,loop1带进位位的循环左移 RLC A MOV P1,A CALL DELAY DJNZ R2,LOOP1 MOV R2,#07H LOOP2: ;loop2循环右移动 RR A MOV P1,A CALL DELAY
[单片机]
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved