控制燈的基本函式:
#include
"stdbool.h"
void
aplrunledon
(bool on)
led燈的閃爍序列如下:
typedef
struct
ledflashstate;
// led燈的亮滅順序
ledflashstate ledflashstates=
,// 亮燈300ms
,// 滅燈700ms
,// 亮燈100ms
,// 滅燈100ms
,// 亮燈100ms
,// 滅燈700ms
};
那麼有至少2種有效的閃燈控制實現。
__no_return void threadboardled (
void
*argument)
}}
ostimerid_t timeridledflash;
void timerledflash_callback (
void
*arg)
}__no_return void threadboardled (
void
*argument)
}
下面還有一種短期沒問題,但是不能長期執行的方案
__no_return void threadboardled (
void
*argument)
else}}
}
上面的**潛在的問題是通過oskernelgettickcount獲取的系統計數器可能會溢位後環迴。如果系統心跳設定為1毫秒一次,會在執行大約49天後出現計數器溢位。 基於verilog的交通燈
狀態說明 1,初始化 東西南北的燈全亮 2,東西綠燈亮,南北紅燈亮 20秒 3,東西黃燈亮,南北紅燈亮 5秒 4,東西紅燈亮,南北綠燈亮 20秒 5,東西紅燈亮,南北黃燈亮 5秒 6,迴圈 2,3,4,5,如下 timescale 1ns 1ps company author gong create...
基於FPGA的呼吸燈設計
網上類似的標題很多,有一些呼吸燈的設計是基於微控制器的,還有一部分設計是基於fpga的,我也一時手癢,將這兩天自己重新寫的verilog描述語句曬出來,免得壓箱底放久了,出現發霉點。為什麼說重新寫的呢,之前有老師教過,講過呼吸燈,並且畫出了 波形圖和框圖,這段時間,略有閒暇,就將之前學習的程式,重新...
基於verilog的交通燈程式
module traffic clk,sm bit,key,sm seg,en,rst,hold,light1,light2 input clk 定義時鐘引腳 input rst,en 定義復位和使能引腳 output 7 0 sm bit 定義數碼管位選引腳 output 7 0 sm seg 定...