HCR -PC 客户端开源

2009-12-286893
AI 快速预览详细 收起
本文介绍了HCR-PC客户端开源项目的编码器连接图和采样代码。通过初始化模块并读取脉冲数,可以实现对编码器的应用。文章提供了具体的代码示例,包括初始化函数和中断处理函数。此外,还推荐了chai2010撰写的关于SVN使用的浅显易懂的教程。
楼主
HCR-PC 客户端开源 · 编码器连接与采样代码_image_1.webp

admin  管理员

发表于 2009-12-28 21:35:00

HCR -PC 客户端开源

开源的文件连接在Google Code上。装了SVN的可以直接check out。
Encoder Connection Diagram
Encoder Sampling Code ```
const byte encoder0pinA = 2;//A pin -> the interrupt pin 0 const byte encoder0pinB = 4;//B pin -> the digital pin 4 byte encoder0PinALast; int duration;//the number of the pulses boolean Direction;//the rotation direction
void setup() {
Serial.begin(57600);//Initialize the serial port EncoderInit();//Initialize the module }
void loop() { Serial.print("Pulse:"); Serial.println(duration); duration = 0; delay(500); }
void EncoderInit() { Direction = true;//default -> Forward
pinMode(encoder0pinB,INPUT);
attachInterrupt(0, wheelSpeed, CHANGE); }
void wheelSpeed() { int Lstate = digitalRead(encoder0pinA); if((encoder0PinALast == LOW) && Lstate==HIGH) { int val = digitalRead(encoder0pinB); if(val == LOW && Direction) { Direction = false; //Reverse } else if(val == HIGH && !Direction) { Direction = true; //Forward } } encoder0PinALast = Lstate;
if(!Direction) duration++; else duration--; }
```
Open source home care robot from roboticfan.com
欢迎大家看一下chai2010撰写的关于SVN的使用教程。非常浅显易懂!

希望大家能在这基础上完善更新

创作许可协议

本项目采用 None(不开放任何权利,保留所有权利) 进行许可。

评论(1)
yeadmin
yeadmin
作者
开源的文件连接在Google Code上。装了SVN的可以直接check out。[align=left]Encoder Connection Diagram[/align][align=left]http://www.dfrobot.com/wiki/images/thumb/8/8e/Encoder_Connection.PNG/444px-Encoder_Connection.PNG[/align][align=left]Encoder Sampling Code ```[/align][align=left]const byte encoder0pinA = 2;//A pin -> the interrupt pin 0 const byte encoder0pinB = 4;//B pin -> the digital pin 4 byte encoder0PinALast; int duration;//the number of the pulses boolean Direction;//the rotation direction[/align][align=left]void setup() {
Serial.begin(57600);//Initialize the serial port EncoderInit();//Initialize the module }[/align][align=left]void loop() { Serial.print("Pulse:"); Serial.println(duration); duration = 0; delay(500); }[/align][align=left]void EncoderInit() { Direction = true;//default -> Forward
pinMode(encoder0pinB,INPUT);
attachInterrupt(0, wheelSpeed, CHANGE); }[/align][align=left]void wheelSpeed() { int Lstate = digitalRead(encoder0pinA); if((encoder0PinALast == LOW) && Lstate==HIGH) { int val = digitalRead(encoder0pinB); if(val == LOW && Direction) { Direction = false; //Reverse } else if(val == HIGH && !Direction) { Direction = true; //Forward } } encoder0PinALast = Lstate;[/align][align=left]if(!Direction) duration++; else duration--; }[/align][align=left]```[/align][align=left]Open source home care robot from roboticfan.com[/align][align=left]欢迎大家看一下chai2010撰写的关于SVN的使用教程。非常浅显易懂![/align][align=left]http://code.google.com/p/hcrobot/wiki/svn_tutorial[/align]
希望大家能在这基础上完善更新
- 没有更多了 -