u8glib自学笔记1

Arduino编译Marlin1.1出现 fatal error: U8glib.h: No such file or directory如何解决 marlin固件发展至今已经形成了三个比较重大的版本:1.0版,1.1版,2.0版。 本文介绍的是Marlin1.1版本的,Arduino用到的版本1.6.7,Marlin1.0版,1.1版都能用Arduino1.6.7版本去编译,没有多大问题。 但Marlin2.0版本需要在Arduino IDE 1.8.8或更高版本或PlatformIO。 而且Marlin1.1版本在Arduino IDE 1.8.8或更高版本上是编译不通过的。 如果编译出现:Marlin.ino:45:11... 阅读详情

第一部分,u8glib标准语法格式:

本文使用的是DFRobot出品的LCD12864 Shield V1.0

端口占用情况:

SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9, RST = 8

背光控制占用数字口7

//调用u8glib库
#include "U8glib.h"

//创建一个LCD对象
U8GLIB_NHD_C12864 u8g(13, 11, 10, 9, 8);

void setup(){

}

void loop(){
    u8g.firstPage();
    do{
        //display
    }while(u8g.nextPage());
}

//u8g.firstPage() 表示图像循环的开始
//u8g.nextPage() 表示图像循环的结束

第二部分,画出几何图形

首先是画点。

函数语法:

void U8GLIB::drawPixel(unit8_t x, unit8_t y)
//参数为:(x:点的横坐标 y:点的纵坐标)

例子: u8g.drawPixel(14, 23);


完整代码:

//调用u8glib库
#include "U8glib.h"

//创建一个LCD对象
U8GLIB_NHD_C12864 u8g(13, 11, 10, 9, 8);

void draw(){
  u8g.drawPixel(14, 23);
}

void setup() {
  // put your setup code here, to run once:
  //旋转屏幕180°
  u8g.setRot180();// rotate screen
}

void loop() {
  // put your main code here, to run repeatedly:
  u8g.firstPage();
  do{
     draw();
  }while(u8g.nextPage());
}

然后是画线。

函数语法:

void U8GLIB::drawLine(u8g_uint_t x1, u8g_uint_t y1, u8g_uint_t x2, u8g_uint_t y2)
//参数为: (x1:线段起始点横坐标 y1:线段起始点纵坐标 x2:线段结束点横坐标 y2:线段结束点纵坐标)

例子: u8g.drawLine(7, 10, 40, 55);


完整代码:

//画一个V
//调用u8glib库
#include "U8glib.h"

//创建一个LCD对象
U8GLIB_NHD_C12864 u8g(13, 11, 10, 9, 8);

void draw(){
  u8g.drawLine(7, 10, 40, 55);
  u8g.drawLine(40, 55, 73, 10);
}

void setup() {
  // put your setup code here, to run once:
  //旋转屏幕180°
  u8g.setRot180();// rotate screen
}

void loop() {
  // put your main code here, to run repeatedly:
  u8g.firstPage();
  do{
     draw();
  }while(u8g.nextPage());
}

然后是画连续点(线段)(水平线段或垂直线段)

函数语法:

void U8GLIB::drawHLine(u8g_uint_t x, u8g_uint_t y, u8g_uint_t w) //水平线段
void U8GLIB::drawVLine(u8g_uint_t x, u8g_uint_t y, u8g_uint_t h) //垂直线段
//参数为: (x:线段起始点 y:线段结束点 w:水平宽度 h:垂直高度)(高度单位为像素点)

例子: u8g.drawHLine(60,12, 30);
u8g.drawVLine(10,20, 20);


完整代码:
//画一个方形
//调用u8glib库
#include "U8glib.h"

//创建一个LCD对象
U8GLIB_NHD_C12864 u8g(13, 11, 10, 9, 8);

void draw(){
    u8g.drawHLine(40,15, 30);
    u8g.drawVLine(70,15, 30);
    u8g.drawHLine(40,45, 30);
    u8g.drawVLine(40,15, 30);
}

void setup() {
  // put your setup code here, to run once:
  //旋转屏幕180°
  u8g.setRot180();// rotate screen
}

void loop() {
  // put your main code here, to run repeatedly:
  u8g.firstPage();
  do{
     draw();
  }while(u8g.nextPage());
}

然后是画出实心的三角形

函数语法:

void U8GLIB::drawTriangle(uint16_t x0, uint16_t y0, uint16_t x1, uint16_t y1, uint16_t x2, uint16_t y2)
//参数为:(x0:一个角的横坐标 y0:一个角的纵坐标 x1:另一个角的横坐标 y1:另一个角的纵坐标 x2:最后一个角的横坐标 y2:最后一个角的纵坐标)

例子: u8g.drawTriangle(14,9, 45,32, 9,42);


完整代码:

//画一个实心三角形
//调用u8glib库
#include "U8glib.h"

//创建一个LCD对象
U8GLIB_NHD_C12864 u8g(13, 11, 10, 9, 8);

void draw(){
    u8g.drawTriangle(14,9, 45,32, 9,42);
}

void setup() {
  // put your setup code here, to run once:
  //旋转屏幕180°
  u8g.setRot180();// rotate screen
}

void loop() {
  // put your main code here, to run repeatedly:
  u8g.firstPage();
  do{
     draw();
  }while(u8g.nextPage());
}

然后是画出空心矩形,刚才我们用画线段的方式实现了画空心矩形,现在用更简单的方法就可以画出空心矩形。

函数语法:

void U8GLIB::drawFrame(u8g_uint_t x, u8g_uint_t y, u8g_uint_t w, u8g_uint_t h)
//参数是:(x:矩形左上角横坐标 y:矩形左上角纵坐标 w:矩形的宽 h:矩形的高)(高和宽的单位都是像素)

例子: u8g.drawFrame(10, 12, 30, 20);


完整代码:

//画一个空心矩形
//调用u8glib库
#include "U8glib.h"

//创建一个LCD对象
U8GLIB_NHD_C12864 u8g(13, 11, 10, 9, 8);

void draw(){
    u8g.drawFrame(10, 12, 30, 20);
}

void setup() {
  // put your setup code here, to run once:
  //旋转屏幕180°
  u8g.setRot180();// rotate screen
}

void loop() {
  // put your main code here, to run repeatedly:
  u8g.firstPage();
  do{
     draw();
  }while(u8g.nextPage());
}

然后是画圆角空心矩形

函数语法:

void U8GLIB::drawRFrame(u8g_uint_t x, u8g_uint_t y, u8g_uint_t w, u8g_uint_t h, u8g_uint_t r)
//参数是: (x:圆角矩形左上角横坐标 y:圆角矩形左上角纵坐标 w:圆角矩形宽度 h:圆角矩形高度 r:圆角弧度的半径)
注意:最好要满足两个公式,使用时最好加上if来判断是否符合要求
w > = 2 * x * ( r + 1 )
h > = 2 * x * ( r + 1 )

例子: u8g.drawRFrame(10 ,12 ,30 ,20 ,5);


完整代码:

//画一个圆角空心矩形
//调用u8glib库
#include "U8glib.h"

//创建一个LCD对象
U8GLIB_NHD_C12864 u8g(13, 11, 10, 9, 8);

void draw(){
    u8g.drawRFrame(10,12, 30,20, 5);
}

void setup() {
  // put your setup code here, to run once:
  //旋转屏幕180°
  u8g.setRot180();// rotate screen
}

void loop() {
  // put your main code here, to run repeatedly:
  u8g.firstPage();
  do{
     draw();
  }while(u8g.nextPage());
}

然后画实心矩形,和画空心的一样。注意语法区别!!!

函数语法:

void U8GLIB::drawBox(u8g_uint_t x, u8g_uint_t y, u8g_uint_t w, u8g_uint_t h)

例子: u8g.drawBox(10,12,20,30);

然后画出圆角实心矩形,和画圆角空心矩形一样,但注意语法区别!!!

函数语法:

void U8GLIB::drawRBox(u8g_uint_t x, u8g_uint_t y, u8g_uint_t w, u8g_uint_t h, u8g_uint_t r)

例子: u8g.drawRBox(10 ,12 ,30 ,20 ,5);


然后画出空心圆

函数语法:

void U8GLIB::drawCircle(u8g_uint_t x0, u8g_uint_t y0, u8g_uint_t rad, uint8_t opt = U8G_DRAW_ALL)
//参数是:(x0:圆心的横坐标 y0:圆心的纵坐标 rad:圆的半径 opt:见下表)
U8G_DRAW_UPPER_RIGHT        上部右侧 1/4 圆弧
U8G_DRAW_UPPER_LEFT         上部左侧 1/4 圆弧
U8G_DRAW_LOWER_LEFT         下部左侧 1/4 圆弧
U8G_DRAW_LOWER_RIGHT        下部右侧 1/4 圆弧
U8G_DRAW_ALL                整圆(默认)

例子: u8g.drawCircle(20,20, 14); //整圆
u8g.drawCircle(20,20, 14, U8G_DRAW_UPPER_RIGHT); //1/4圆


完整代码:

//画一个空心圆
//调用u8glib库
#include "U8glib.h"

//创建一个LCD对象
U8GLIB_NHD_C12864 u8g(13, 11, 10, 9, 8);

void draw(){
    u8g.drawCircle(20,20, 14);
}

void setup() {
  // put your setup code here, to run once:
  //旋转屏幕180°
  u8g.setRot180();// rotate screen
}

void loop() {
  // put your main code here, to run repeatedly:
  u8g.firstPage();
  do{
     draw();
  }while(u8g.nextPage());
}

然后画出实心圆

函数语法:

void U8GLIB::drawDisc(u8g_uint_t x0, u8g_uint_t y0, u8g_uint_t rad, uint8_t opt = U8G_DRAW_ALL)
//参数是:(x0:圆心的横坐标 y0:圆心的纵坐标 rad:圆的半径 opt:见下表)
U8G_DRAW_UPPER_RIGHT        上部右侧 1/4 扇形
U8G_DRAW_UPPER_LEFT         上部左侧 1/4 扇形
U8G_DRAW_LOWER_LEFT         下部左侧 1/4 扇形
U8G_DRAW_LOWER_RIGHT        下部右侧 1/4 扇形
U8G_DRAW_ALL                整圆(默认)

例子: u8g.drawDisc(20,20, 14); //整圆
u8g.drawDisc(20,20, 14, U8G_DRAW_UPPER_RIGHT); //1/4圆


完整代码:

//画一个实心圆
//调用u8glib库
#include "U8glib.h"

//创建一个LCD对象
U8GLIB_NHD_C12864 u8g(13, 11, 10, 9, 8);

void draw(){
    u8g.drawDisc(20,20, 14);
}

void setup() {
  // put your setup code here, to run once:
  //旋转屏幕180°
  u8g.setRot180();// rotate screen
}

void loop() {
  // put your main code here, to run repeatedly:
  u8g.firstPage();
  do{
     draw();
  }while(u8g.nextPage());
}

然后画出椭圆(空心)

函数语法:

void drawEllipse(u8g_uint_t x0, u8g_uint_t y0, u8g_uint_t rx, u8g_uint_t ry, uint8_t opt)
//参数是:(x0:椭圆圆心的横坐标 y0:椭圆圆心的纵坐标 rx:水平方向半径 ry:垂直方向半径 rad:圆的半径 opt:见下表)
U8G_DRAW_UPPER_RIGHT        上部右侧 1/4 椭圆弧
U8G_DRAW_UPPER_LEFT         上部左侧 1/4 椭圆弧
U8G_DRAW_LOWER_LEFT         下部左侧 1/4 椭圆弧
U8G_DRAW_LOWER_RIGHT        下部右侧 1/4 椭圆弧
U8G_DRAW_ALL                整圆(默认)

例子: u8g.drawEllipse(20,20, 14,17);


完整代码:

//画一个椭圆
//调用u8glib库
#include "U8glib.h"

//创建一个LCD对象
U8GLIB_NHD_C12864 u8g(13, 11, 10, 9, 8);

void draw(){
    u8g.drawEllipse(20,20, 14,17);
}

void setup() {
  // put your setup code here, to run once:
  //旋转屏幕180°
  u8g.setRot180();// rotate screen
}

void loop() {
  // put your main code here, to run repeatedly:
  u8g.firstPage();
  do{
     draw();
  }while(u8g.nextPage());
}

然后画出椭圆(空心),和画空心椭圆是一样的,但注意语法格式区别

函数语法:

void drawFilledEllipse(u8g_uint_t x0, u8g_uint_t y0, u8g_uint_t rx, u8g_uint_t ry, uint8_t opt)
//参数是:(x0:椭圆圆心的横坐标 y0:椭圆圆心的纵坐标 rx:水平方向半径 ry:垂直方向半径 rad:圆的半径 opt:见下表)
U8G_DRAW_UPPER_RIGHT        上部右侧 1/4 椭圆弧
U8G_DRAW_UPPER_LEFT         上部左侧 1/4 椭圆弧
U8G_DRAW_LOWER_LEFT         下部左侧 1/4 椭圆弧
U8G_DRAW_LOWER_RIGHT        下部右侧 1/4 椭圆弧
U8G_DRAW_ALL                整圆(默认)

例子: u8g.drawFilledEllipse(20,20, 14,17);

以上就是使用u8glib库画出几何图形。
整理一下:

u8g.drawPixel(14, 23);                  //画点
u8g.drawLine(7, 10, 40, 55);            //画线
u8g.drawHLine(60,12, 30);               //画水平线段
u8g.drawVLine(10,20, 20);               //画垂直线段
u8g.drawTriangle(14,9, 45,32, 9,42);    //画实心三角形
u8g.drawFrame(10, 12, 30, 20);          //画空心矩形
u8g.drawRFrame(10 ,12 ,30 ,20 ,5);      //画空心圆角矩形
u8g.drawBox(10,12,20,30);               //画实心矩形
u8g.drawRBox(10 ,12 ,30 ,20 ,5);        //画实心圆角矩形
u8g.drawCircle(20,20, 14);              //整空心圆 
u8g.drawCircle(20,20, 14, U8G_DRAW_UPPER_RIGHT); //1/4空心圆
u8g.drawDisc(20,20, 14);                //整实心圆 
u8g.drawDisc(20,20, 14, U8G_DRAW_UPPER_RIGHT); //1/4扇形
u8g.drawEllipse(20,20, 14,17);          //空心椭圆
u8g.drawFilledEllipse(20,20, 14,17);    //实心椭圆

上述代码已测试过,均可运行。如果有输入或者拼写错误,请麻烦留言,以便我及时可以修改过来。谢谢

Arduino连接7针OLED(U8glib库) 7针的OLED网上的资料比较少,大多找到的是4针的,也参考了一些其他博主的文章,可最后还是花了不少时间,踩了不少坑,最终还是成功了,以此记录一下。 一.所使用的环境 1.Arduino IDE1.8.12 2.Arduino UNO 二.安装U8glib库 1.在工具栏里选择“工具”->“管理库”,打开库管理器。(注意IDE版本要在1.8以上!!!) 在文本框里输入“U8glib”,回车: 然后选择版本安装即可。 三.连线 OLED Arduino板子 GND GND VCC 阅读详情

相关推荐

【Arduino库之U8g2lib(单色显示屏的图形库)】

U8g2U8glib是用于单色显示屏的图形库,它可以用于51、Arduino、ARM控制显示屏,目前作者olikraus已经更新到version2了,也就是U8g2lib(下面简称U8g2)。U8g2可处理所有图形支持很多字体(。(几乎)对字体大小没限制微控制器需要一定的存储空间来传递显示U8x8只能输出文字只能输出固定像素的字体直接输出到显示屏,微控制器无需缓冲区U8logOutput of boot/startup information 输出初始化信息。

sxstj的博客 8935

U8glib学习使用(详细版)

使用模块 Arduino UNO 0.96 OLED (SIP) 此显示模块根据电阻链接的方式 来控制连接的模式(SPI IIC ) 端口占用情况 SPI Com: SCK = 13, MOSI = 11, CS = 10, DC = 9, RST =RESET //调用u8glib库 #include "U8glib.h" //创建一个对象 U8GLIB_SSD1306_128X64 u8g(13, 11, 10, 9); // SW SPI Com: SCK = 13, MOSI = 11, CS

嵌入式软件工程师的博客 1万+

Marlin1.1编译报错U8glib.h缺失的全面排查与解决方案

本文针对Marlin 1.1固件编译时常见的`fatal error: U8glib.h: No such file or directory`报错,提供了全面的排查与解决方案。核心在于通过Arduino IDE库管理器正确安装U8glib图形库,并深入探讨了当标准方法失效时的进阶排查步骤,包括检查库路径冲突、Arduino IDE版本兼容性(推荐使用1.8.9或更早版本)以及配置文件设置,帮助用户彻底解决这一编译难题。

weixin_29161719的博客 447

Arduino Nano 驱动OLED测试入门(二) U8glib 库函数及参数讲解

以下内容装载自 http://www.geek-workshop.com/thread-10634-1-1.html (微排版) U8glib库函数,有一些描述不正确,因为是直接翻译过来的,欢迎提意见。 另外我觉得U8G2库比它更强大,同样支持1306控制芯片。正在研究中,到时候再发出来。 ----------------------------------------------------------目录------------------------------------------------

malcolm_110的博客 8257

u8glib库文件

亲测相当 好用,针对OLED的驱动移植例如SSD1306 ST7290等

U8glib编程库

oled12864驱动,U8glib,12864液晶屏幕编程库。

u8glib自学笔记2

u8glib自学笔记第2篇

胖哥的博客 4998

u8glib_arduino_v1.13.zip

ARDUINO的学习中有关LCD12684的相关库,有利于学习arduino

Arduino DHT11 数据打印到 LCD 12864

自学Arduino LCD12864 笔记,先简单实现了将DHT11数据打印都LCD。后面会写更详细的LCD12864的使用说明。

胖哥的博客 3499

sid图像数据_遥感影像数据

影像数据基本概念影像数据是由卫星或飞机上的成像系统获得的影像,多为遥感影像数据。影像数据的每个像元都有一个值,表示传感器探测到像素对应地面面积上目标物的电磁辐射强度,也叫亮度值、灰度值。SuperMap支持的影像数据格式有:*.img、*.tif、*.tiff、*.bmp、*.jpg、*.png、*.gif、*.raw、*.sid等。计算机以二进制记录数据,所以其量化的等级以二进制来划分,即2n。...

weixin_39534395的博客 1626

大数据之数据抽取架构演变过程

而当时我们搭建的Flink集群是基于YARN进行资源管理和调度的,因为YARN中不仅仅包含着FLInk的资源,也有hive,zoozie,hdfs等等的资源,这样容易造成yarn资源的过度使用,容易引起整个底座的cpu以及内存的使用问题,经过排查,主要是由于FLink的使用资源引起的,所以后续就把Flink从整个集群中剥离出来,进行资源的隔离,最后Flink采用了StandAlone HA部署(但是这个目前还是存在问题,后续根据项目进行优化)'topic' = '表名',二、数据抽取架构的演变。

天道酬勤 867

2024年最新Python面试及答案,Ubuntu16(2),大厂面试技巧

通过下面配置切换版本。

2401_84123026的博客 696

iPhone免越狱Git服务器搭建教程-iSH

iPhone免越狱Git服务器搭建教程

jts666的博客 4428

2024年Python最全Ubuntu16,2024年最新高级Python面试答案

别在网上瞎学了,我最近也做了一些资源的更新,只要你是我的粉丝,这期福利你都可拿走。我先来介绍一下这些东西怎么用,文末抱走。这是我花了几天的时间去把Python所有方向的技术点做的整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。最近我才对这些路线做了一下新的更新,知识体系更全面了。

2401_84572928的博客 404

西电计组实验二 运算器实验

算术逻辑运算实验 一.实验目的   1.了解简单运算器的数据传输通路。   2.验证运算功能发生器的组合功能。   3.掌握算术逻辑运算加、减、与的工作原理。   4.验证实验台运算的8位加、减、与、直通功能。   5.按给定数据,完成几种指定的算术和逻辑运算。 二.实验原理   算术逻辑单元ALU的数据通路如图2-1所示。其中运算器ALU181根据74LS181的功能用VHDL硬件描述语言编辑而成,构成8位字长的ALU。参加运算的两个8位数据分别为A[7…0]和B[7…0],运算模式由S[3…0]的16种

Polaris的博客 1万+

2026终极反反爬:Canvas/WebGL/字体指纹全维度伪装,应对浏览器检测实战指南

本文分享了2026年浏览器指纹检测现状及全维度伪装方案。当前反爬系统采用多维度联合指纹检测,重点针对硬件级(WebGL、Canvas)、系统级(字体、CPU)和行为级(鼠标移动)指纹。作者设计了一个独立的指纹伪装引擎,包含真实设备指纹库、指纹生成器和统一注入层,通过JS沙箱隔离实现伪装。核心方案包括:Canvas指纹通过真实设备渲染差异添加微偏移;WebGL指纹完整劫持上下文返回真实显卡参数;字体指纹劫持measureText方法模拟不同系统字体宽度。该方案实测可连续运行一个月零封号,解决了传统方法易被检测

专注于Python爬虫开发,分享爬虫技巧、项目实战与反爬经验,使用Scrapy、BeautifulSoup等工具,解决数据抓取难题。 925

校招面试总结(一)

校招过程中的面试总结: 先写了这几个 之后会把美团、头条、滴滴和一些小公司的面经在第二个总结补充一下A.阿里(菜鸟)二面GG一面:40分钟1.简单自我介绍2.Java的面向对象怎么理解3.简历上有写MATLAB 怎么去用的 数学建模吗?4.集合类 hashMap源码 发生hash碰撞怎么办 1.8版本之后有什么更新 为什么用红黑树 时间复杂度5.hashMap线程不安全体现的点 怎么变成线程安全6...

zlj1217的博客 988

HSM 网络安全 信息安全

HSM HSM信息安全功能 汽车电子网络安全中HSM 的应用场景 选择适合汽车电子网络安全的 HSM 符合汽车安全标准和法规要求的HSM HSM 在汽车电子网络安全中的可靠性和安全性 评估汽车电子网络的安全性 汽车 HSM(Hardware Security Module)模块开发 汽车 HSM(Hardware Security Module)模块测试

天赐好车的博客 1238

Linux日常使用技巧(一)

Linux日常使用技巧(一)

IT菜鸟 9391

FAA和EASA在机载电子硬件适航中的发展历史与差异

FAA和EASA在机载电子硬件的适航审查中虽然存在一些差异,但通过近年来的合作,这些差异正在逐步缩小。两者通过。

qq_41854911的博客 745

2025 华为OD机试真题e卷 C语言 实现【竖直四子棋】

竖直四子棋的棋盘是竖立起来的,双方轮流选择棋盘的一列下子,棋子因重力落到棋盘底部或者其他棋子之上,当一列的棋子放满时,无法再在这列上下子。

MISAYAONE的博客 1417

Arduino学习——u8glib库资料整理

第一部分,u8glib标准语法格式: 本文使用的是DFRobot出品的LCD12864 Shield V1.0 端口占用情况: SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9, RST = 8 背光控制占用数字口7 //调用u8glib库 #include "U8glib.h" //创建一个LCD对象 U8GLIB_NHD...

weixin_30916125的博客 1864

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

Arduino SSD1306 OLED显示

本教程的硬件环境为: Arduino UNO 0.96寸 OLED-128X64 SPI 接口 U8glib库链接:链接:https://pan.baidu.com/s/1KpoHd4kXtMAzbrmMjHM7aw 密码:5ffl 取模软件:链接:https://pan.baidu.com/s/1vWB0sEvODR9X5cWlBBQArg 密码:sepr U8glib库函数介绍 函数: &gt...

沸腾的石灰 2万+

Probability and Statistics - 4th edition

Probability and Statistics - 4th edition

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

Arduino UNO u8glib显示中文-亲测可用

Arduino UNO开发板使用u8glib 显示中文汉字,亲测可用。总结不易,多支持!

新思维软件 3869

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

Arduino入门教程--连载

Arduino区精华 Arduino学习笔记A1 - 使用4017数字集成块扩展Arduino开关输入端 Arduino学习笔记A2 - Arduino连接超声波传感器测距 Arduino学习笔记A3 - Arduino连接HMC5883L三轴电子罗盘传感器 Arduino学习笔记A4 - Arduino软件模拟PWM以及提高软PWM效率 Arduino学习笔记A5 -

CCJHDOPC的专栏: 9124
上一篇: Arduino DHT11 数据打印到 LCD 12864
下一篇: u8glib自学笔记2
程序猿胖哥
博客等级 码龄11年 28粉丝 12原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值