|
新手上路, Arduino 乐园- LCD clock ..
[复制链接]
|
|
发表于 30-4-2013 07:39 PM
|
显示全部楼层
angels1026 发表于 29-4-2013 10:54 PM 
这个太长了 .. 我在工作的时候想工作又想这个结果想不出好办法来
这个比较好不知道有没有更加好的 ...
#18的方法不是很简单吗!试了没有?
|
|
|
|
|
|
|
|
发表于 30-4-2013 07:56 PM
|
显示全部楼层
你的代码太长了,没有仔细阅读。
有件事必须注意,ArduinoUNO(ATMega328)只有六个PWM引脚,那就是3,5,6,9,10,11 |
|
|
|
|
|
|
|

楼主 |
发表于 30-4-2013 07:58 PM
|
显示全部楼层
|
|
|
|
|
|
|
发表于 30-4-2013 08:28 PM
|
显示全部楼层
angels1026 发表于 30-4-2013 07:58 PM 
试了没问题
之前想... LED 使用 multiplex led
1 2 3
搞错了,我以为你只要一般的效果,没有想到你要用在3D cude
这里有一个shift register 程序库,使用三个Arduino引脚就可以控制很多PWM。
|
|
|
|
|
|
|
|

楼主 |
发表于 1-5-2013 08:54 PM
|
显示全部楼层
西门庆33 发表于 30-4-2013 08:28 PM 
搞错了,我以为你只要一般的效果,没有想到你要用在3D cude
这里有一个shift register 程序库,使用三 ...
大哥... 我之前的 LED fader 是给鱼缸灯用的.. 然后我顺便玩玩 led cube 
LED fader 的源码我研究成功- int led[] = {
- 3, 5, 6, 9};
- int button1 = 2;
- int buttonstate1 = 0;
- int i = 0;
- int a,b;
- int L = 0;
- int J = 4;
- void setup(){
- for(i = 0; i < 4; i++){
- pinMode(led[i],OUTPUT);
- }
- pinMode(button1,INPUT);
- }
- void loop(){
- buttonstate1 = digitalRead(button1);
- if(buttonstate1 == HIGH){
- for(L = L; L < 4; L++ ){
- a = 0;
- for(a = a; a < 254; a++){
- analogWrite(led[L],a);
- delay(10);
- }
- digitalWrite(led[L],HIGH);
- }
- delay(10);
- }
- else{
- if(L == 4){
- L = 4;
- for(L = L; L > -1; L-- ){
- a = 254;
- for(a = a; a > 0 ; a--){
- analogWrite(led[L],a);
- delay(10);
- }
- digitalWrite(led[L],LOW);
- }
- delay(10);
- }
- delay(10);
- L = 0;
- }
- }
复制代码 现在想要用 energia + MSP430 ..
不过 MSP430 的pinout 不知道怎么样的要研究研究先..
|
|
|
|
|
|
|
|
发表于 1-5-2013 09:38 PM
|
显示全部楼层
|
|
|
|
|
|
|

楼主 |
发表于 10-5-2013 12:29 AM
|
显示全部楼层
|
|
|
|
|
|
|
发表于 10-5-2013 05:18 PM
|
显示全部楼层
angels1026 发表于 10-5-2013 12:29 AM 
大哥... 最近想做一个 OBD1 reader .. 需要用到 UART 和电脑连接..
如果小弟使用 arduino UNO 的板块可以 ...
UART常用在RS-232 , RS-422或RS-485通信标准,都是属于serial。使用rduino,通过UART与电脑传达信息当然没问题。前提是你用什么协议(protocol),怎样取得测试样本。
简单的讲,当你上载sketch至arduino时, 已经是使用serial,它是属于5V TTL serial。
|
|
|
|
|
|
|
|

楼主 |
发表于 22-7-2013 11:32 PM
|
显示全部楼层
|
|
|
|
|
|
|
发表于 24-7-2013 09:43 PM
|
显示全部楼层
|
|
|
|
|
|
|

楼主 |
发表于 25-7-2013 10:44 PM
|
显示全部楼层
西门庆33 发表于 24-7-2013 09:43 PM 
74HC595是一个串行输入并行输出IC,毎颗74HC595有八位输出。只须用三个信号脚,就可以设计很多输出
这 ...
大哥我有事情想要请教.gif)
这个只是一个练习的东西.. 是有 12粒 LED 接去了 arduino UNO pin 2 --> pin 12 顺序
然后写了下面的东西.. 要的效果是
LED 亮 12 ~ 1 然后逆序 1~12 ...只是练习而已..虽然改装了一点就可以了不过还是想要知道为什么.. WHY ..
LED 效果 \|/
100000000000
110000000000
111000000000
111100000000
111110000000
111111000000
111111100000
111111110000
111111111000
111111111100
111111111110
111111111111
011111111111
001111111111
000111111111
000011111111
000001111111
000000111111
000000011111
000000001111
000000000111
000000000011
000000000001- int led [] = {
- 2,3,4,5,6,7,8,9,10,11,12};
- int a,b;
- int g = 50;
- void setup(){
- while(a < 12){
- pinMode(led[a],OUTPUT);
- a++;
- }
- }
- void loop(){
- for( a = 0; a < 12; a++){
- digitalWrite(led[a],LOW);
- }
- for( b = 12; a > 0; a--){
- digitalWrite(a,HIGH);
- delay(g);
- }
- for(b = 12; b > 0;b --){
- digitalWrite(b,LOW);
- delay(g);
- }
- for( a = 0; a < 12; a ++){
- digitalWrite(led[a],HIGH);
- delay(g);
- }
- for( a = 0; a < 12; a ++){
- digitalWrite(led[a],LOW);
- delay(g);
- }
- }
复制代码 中间的
digitalWrite(a,HIGH);
和 digitalWrite(b,LOW);
用这个就没有问题..
为什么加了 array led[] -> digitalWrite(led[a],HIGH);
第12粒开始亮到第一粒 ,LED 亮的不顺.. 一开始应该是 后面开始亮起.. 可是我的一开始变成 12 亮 4 亮 1 亮... 气死我了 不知道为什么请大大看看小弟犯了什么错
下面一个 1 开始亮到最后一粒
又没有问题
小弟想知道为什么.. 如果犯了很大的错不要打我 .gif)
本帖最后由 angels1026 于 25-7-2013 10:51 PM 编辑
|
|
|
|
|
|
|
|
发表于 26-7-2013 11:08 AM
|
显示全部楼层
angels1026 发表于 25-7-2013 10:44 PM 
大哥我有事情想要请教
这个只是一个练习的东西.. 是有 12粒 LED 接去了 arduino UNO pin 2 --> p ...
你的数组(array)只有11位成员。- for( a = 0; a < 12; a++){
- digitalWrite(led[a],LOW);
- }
复制代码 数组 的 index 都是从 0开始算起,下面是 修改过的程序:- for( a = 0; a <=10; a++){
- digitalWrite(led[a],LOW);
- }
复制代码 |
|
|
|
|
|
|
|

楼主 |
发表于 26-7-2013 01:30 PM
|
显示全部楼层
wkloh 发表于 26-7-2013 11:08 AM 
你的数组(array)只有11位成员。数组 的 index 都是从 0开始算起,下面是 修改过的程序:
看来我的功夫不够... 忘记了还有 <= 可以用我都是放 <12 这样也是会数到 11 而已..
忘记了 <=10 小过 10 或 和 10 一样 +1 也是 11
顺序没有问题只是逆序不能够.. 要从 12 开始 到 1
我用我写的拿到这样
10000001010
11000001010
11100001010
11110001010
11111001010
11111101010
11111111010
11111110010
11111110110
11111110100
11111110101
为什么 2 和 4 会亮.. 
|
|
|
|
|
|
|
|
发表于 26-7-2013 03:57 PM
|
显示全部楼层
angels1026 发表于 26-7-2013 01:30 PM 
看来我的功夫不够... 忘记了还有
这个 程序也存在问题。- void setup(){
- while(a < <span style="background-color: Red;">12</span>){
- pinMode(led[a],OUTPUT);
- a++;
- }
复制代码 请检查:
1.pin2和pin4是否连到提升电阻(一般设计成输入端)。
2. 检查IO初始化。
|
|
|
|
|
|
|
|

楼主 |
发表于 26-7-2013 11:07 PM
|
显示全部楼层
|
|
|
|
|
|
|

楼主 |
发表于 29-7-2013 11:16 PM
|
显示全部楼层
小弟的 LCD 1602 和 RTC 之类的已经到手了.. 钱包大出血...
研究了这几个东西日后要拿来装入鱼缸灯... 需要时间和实验,






 - #include <LiquidCrystal.h>
- #include <DS1307RTC.h>
- #include <Time.h>
- #include <Wire.h>
- LiquidCrystal lcd ( 12, 11, 5,4,3,6);
- void setup() {
- lcd.begin(16,2);
-
- }
- void loop() {
- tmElements_t tm;
- RTC.read(tm);
- lcd.setCursor(0,0);
- lcd.print("Time");
- lcd.setCursor(6,0);
- lcd.print(tm.Hour);
- lcd.print(":");
- lcd.print(tm.Minute);
- lcd.print(":");
- lcd.print(tm.Second);
- lcd.setCursor(0,1);
- lcd.print("D/M/Y ");
- lcd.print(tm.Day);
- lcd.print("/");
- lcd.print(tm.Month);
- lcd.print("/");
- lcd.print(tmYearToCalendar(tm.Year));
- delay(1000);
- }
-
复制代码 我 copy 人家的然后参考研究和修改..把 serial monitor 的改成 1602 的。。
还需要研究
闹钟要怎么做
要怎么用 button set 时间啊... |
|
|
|
|
|
|
| |
本周最热论坛帖子
|