MSP430系列单片机:G2553循迹

2018.7
还没有进入硕士研究生的生活,就已经被老师拉来给本科大一辅导单片机的入门课程…也是没谁了…
在无聊之余自己也玩起以前玩的TI的MSP430系列,话说自己以前也用这系列搭过蜘蛛机器人,在机器人动起来的时候还是有点成就感的。

7.24
课程结束,本科生用G2搭了一个小车来循迹比赛,赛道是师兄花的,看上去还有点复杂。一些本科生也是厉害,两个红外传感器就搞定地图。估计这就是所谓的运气和实力了。

在课程总结,和老师坐在一起,就感觉事情并没有那么简单。。。
嗯,开始套路我们准研一做循迹小车当复习单片机知识….话说,老师给我的是一种莫名的不能拒绝的感觉。所以…迷迷糊糊就答应下来了。

7.26
花了一天的时间把原来要求控速的小车接上红外来改装,按规则写代码(这里声明,我的印象里,循迹的本质是,走完所有有可能的路线或者按逻辑来走而不是特定规则,这才叫循迹),虽然车还是左摇右摆的走,但也走通了,附上代码,4红外传感。

主函数

#include "Motor.h"

void timer_init()
{
    BCSCTL1 = CALBC1_1MHZ;
    DCOCTL = CALDCO_1MHZ;
    TA1CTL = TASSEL_2 + MC_1;
    TA1CCR0 = T;
    TA1CCTL1 = OUTMOD_7;
    TA1CCTL2 = OUTMOD_7;

    _EINT();
}

void GPIO_init(void)
{
    P1DIR = 0x00;

    P2DIR |= (BIT1 + BIT2 + BIT3 + BIT4);
    P2OUT &= ~(BIT1+BIT3);
    P2SEL |= (BIT2 + BIT4);
}

/* main.c*/
int main(void)
{
    WDTCTL = WDTPW | WDTHOLD;   // Stop watchdog timer

    timer_init();
    GPIO_init();
    while(1)
    {
        switch(flag)
        {
        case 0:
            mode_0();
            break;
        case 1:
            mode_1();
            break;
        case 2:
            mode_2();
            break;
        case 3:
            mode_3();
            break;
        case 4:
            mode_4();
            break;
        case 5:
            mode_5();
            break;
        }
    }
}


驱动函数

#ifndef Motor
#define Motor

  • 15
    点赞
  • 71
    收藏
    觉得还不错? 一键收藏
  • 40
    评论
评论 40
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值