开发板都有程序的,也有使用说明。根据说明做就行了。
1、写好程序,调试、编译、建立HEX文件;
2、通过USB口用下载软件把HEX文件写入单片机;
3、连号线
4、上电运行
用热电偶测量多点的平均温度,其连接方法有串联和并联两种: (1)串联图见图(a) 第一,1、2、3热电偶必须同型号。 第二,各热电偶冷端a、b、c、d必须同温。 第三,按总电势值的1/3计算温度。
#include<iostream>
using namespace std;
template<class T>
T min(T a,T b)
{return (a<ba:b);}
double min(double c,double d)
{return (c<dc:d);}
void main(){ int a=3,b=4;
double c=34,d=43;
cout<<"3和4比较,较小值为:"<<min(a,b)<<endl;
cout<<"34和43比较,较小值为:"<<min(c,d)<<endl;
}
下载程序到pcb板上时检测不到的原因如下:
1、用KEIL查看设备是否连接需要先给单片机上电再打开页面检测,否则也会检测不到;
2、生成代码的时候没有勾选支持串口写,所以下载完程序之后芯片无法再次使用SWD串口数据。
很简单,开两个终端,你应该是用串口吧
使用ssh连接,使用ssh登陆即可实现多终端登陆,登陆后每个终端都是独立的即可以运行多个测试程序
当然还有个更简单的办法,将你想要执行的程序设置成后台执行,这样终端还是有使用权利,你可以再次运行程序(前提你的测试程序所需的资源要足够,比如程序要使用摄像头,两个相同的程序不能共享一个摄像头)
后台执行的方法,后面加一个&符: /aout &
#include <reg52h>
#include "inc/delayh"
#include "inc/hc595h"
#define uchar unsigned char
#define uint unsigned int
sbit PIN_ROTARY_A = P2^0; //引脚1接口
sbit PIN_ROTARY_B = P2^1; //引脚2接口
sbit PIN_ROTARY_C = P2^2; //按下的接口
sbit PIN_ROTARY_D = P2^3; //按下的接口
//uchar code table[]={0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80,0x90};
/ 存储待发送的数据 /
/ 1->8的段码表 /
code unsigned char ucDis_Segmentcode[16] = {0x3f,0x06, 0x5b, 0x4f, 0x66, 0x6d, 0x7d, 0x07, 0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71};
/ 位码表 /
code unsigned char ucDis_Bitcode[8] = {0xFE, 0xFD, 0xFB, 0xF7, 0xEF, 0xDF, 0xBF, 0x7F};
uchar dis_XS[8] = {0x3f,0x06, 0x5b, 0x4f, 0x66, 0x6d, 0x7d};
uchar count = 0;
uchar flag;
uchar Last_BMB_status;
uchar Current_BMB_status;
void display()
{
uchar i;
dis_XS[0] = ucDis_Segmentcode[count/100]; //百位
dis_XS[1] = ucDis_Segmentcode[count%100/10]; //十位
dis_XS[2] = ucDis_Segmentcode[count%10]; //个位
if(i < 2)
{
i++;
}
else
{
i = 0;
}
// for (i = 0; i < 3; i++ )
{
Send_Data(dis_XS[i], ucDis_Bitcode[i]);
//PIN_ROTARY_D = 0;
// Delay1ms(1);
}
}
//
void main()
{
TMOD=0x01; //定时器0,工作方式1
TH0=0xD8;
TL0=0xF0; //给定时器装上初值,10ms中断一次
ET0=1; //打开定时器中断
EA =1; //打开总中断
TR0=1; //启动定时器0
while(1)
{
//display();
Last_BMB_status=PIN_ROTARY_B;
while(!PIN_ROTARY_A) //BMA为低电平时
{
Current_BMB_status = PIN_ROTARY_B;
flag = 1; //标志位置为1说明编码开关被旋转了
}
if(flag == 1)
{
flag = 0; //时刻要注意这一点!给标志位清零
if((Last_BMB_status == 0)&&(Current_BMB_status == 1)) //BMB上升沿表示正转
{
count++;
if(count == 255)
{
count = 0;
}
}
if((Last_BMB_status == 1)&&(Current_BMB_status == 0)) //BMB下降沿表示反转
{
count--;
if(count == 0)
{
count = 255;
}
}
}
}
}
//
void timer0() interrupt 1//定时器0的中断服务程序
{
TH0=0xF8; // TH0=0xD8;
TL0=0xF0; //再次装入初值
display(); //每隔10ms显示一次
if(!PIN_ROTARY_C) //按下旋转编码开关则计数清零
{
count = 0;
}
PIN_ROTARY_D = !PIN_ROTARY_D;
}
设置中退出。小天才平板k1进入测试程序,按下ESC,选择退出既可以了。小天才儿童平板是专为3到12岁儿童量身打造的一款儿童平板。此款产品在内容系统的前提系下,增加了过滤蓝光的护眼屏幕、屏幕距离提醒和时间约定的护眼设计。
以上就是关于买了一个51单片机的学习开发板 请问应该怎么测试呀全部的内容,包括:买了一个51单片机的学习开发板 请问应该怎么测试呀、有ADS1118评估板用热电偶测温度的C示例程序吗、c++编写一个函数模板,求两个同类型最小值,给出用例程序和测试模板,怎么编写程序等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)