TurnipBit开发板串口打印磁敏值

一、什么是TurnipBit开发板

TurnipBit开发板由TurnipSmart公司制作的一款MicroPython开发板,基于nrf51822芯片为主控芯片,以MKL26Z128VFM4芯片作为边载辅助芯片,板载5*5LED灯,板载加速度传感器,板载磁敏传感器灯多种外设器件,同时支持图形编程及MicroPython代码编程控制的高智能芯片开发板。

确保广大爱好者零基础学习单片机。

二、利用TurnipBit开发板完成串口打印磁敏传感器的值

1、具体要求

利用TurnipBit开发板完成串口打印磁敏传感器的值。

2、所需器件

  • TurnipBit开发板 一块
  • 磁敏传感器为板载器件

3、磁敏传感器介绍

MAG3110是一款小型的低功耗,数字3轴磁力计。MAG3110数字磁力计是一款测量所处位置磁场(由地磁场和电路板组件产生的磁场加在一起的总和)的三轴向的组成部分。与三轴加速度传感器组合使用时,可以获得不依赖方向的精确罗盘航向信息。MAG3110包括标准的I2C串行接口,能够测量高达10高斯的所在位置的磁场,输出数据速率(ODR)可达到80HZ。相应的输出速率可以从12ms到数秒钟的采样间隔内调整。

4、串口介绍

串行接口 (Serial Interface) 是指数据一位一位地顺序传送,其特点是通信线路简单,只要一对传输线就可以实现双向通信(可以直接利用电话线作为传输线),从而大大降低了成本,特别适用于远距离通信,但传送速度较慢。一条信息的各位数据被逐位按顺序传送的通讯方式称为串行通讯。串行通讯的特点是:数据位的传送,按位顺序进行,最少只需一根传输线即可完成;成本低但传送速度慢。串行通讯的距离可以从几米到几千米;根据信息的传送方向,串行通讯可以进一步分为单工、半双工和全双工三种。

三、制作主要过程

先上个图,下面再开始说代码的问题。

../../_images/CM.png

1、制作流程

1.首先需要声明类库;

2.定义需要用到的变量;

3.进行传感器的校验;

4.开始主函数的编写,第一步为判断串口是否有数据进来;

5.如果串口有数据进来,把数据读出来;

6.把接收到的数据转换成int类型的;

7.判断接收到的数据是否为1;

8.如果接收到的数据为1,进行磁敏传感器数据的获取;

9.通过串口把获取到磁敏传感器的值发送给电脑;

10.如果不为1,返回“Command error!!!”;

10.完成以上代码编写后,就完成了整个程序的逻辑编写,开始无限循环。

2、具体代码:

Python代码:

from microbit import *#声明类库

w=‘000’

jd=’‘#定义变量

compass.calibrate()#校验磁敏传感器

while True:

if(uart.any()):#判断串口是否有数据

w=uart.readall()#读出串口数据

w=int(w)#把读到的数据转换成int类型

if(w==1):#判断收到的数据是不是为1

jd=compass.heading()#获取磁敏传感器的值

uart.write(‘jd=’)

uart.write(str(jd)+’n’)#从串口输出磁敏传感器的值

else:

uart.write(‘Command error!!!’)