tag 标签: 面包板

相关帖子
相关博文
  • 热度 1
    2024-7-29 10:23
    498 次阅读|
    0 个评论
    多核异构系统是⼀种使同⼀颗SoC芯片中不同核心分别独立运行不同平台的计算系统。通过合理的处理器核心及外设资源划分,使⼀颗SoC芯片能够独立运行Linux系统和实时性系统,在满足系统软件功能和硬件外设丰富性要求的同时,也满足系统的实时性要求,具有突出的性价比优势和产品体积优势。 1. 瑞芯微多核异构系统 “瑞芯微多核异构系统”是瑞芯微提供的⼀套通用多核异构系统解决方案。 在运行平台方面: Linux提供标准的Linux Kernel,RTOS提供开源的RT-Thread ,Bare-metal提供基于RK HAL硬件抽象层的裸机开发库。同时,瑞芯微多核异构系统支持客户自行适配更多的运行平台,例如可以基于RK HAL硬件抽象层适配指定的RTOS等。 在处理器核心方面 : 瑞芯微多核异构系统支持SoC中同构的ARM Cortex-A核心独立运行。也支持SoC中异构的ARM Cortex-M或RISC-V核心独立运行。瑞芯微多核异构系统通过合理的处理器核心资源划分,将适当的任务分配到最适合的核心进行处理,从而使SoC发挥出更优秀的性能和能效表现。 目前,瑞芯微多核异构系统采用无监督的AMP方案。不使用虚拟化管理,从而在运行实时性系统时获得更快的中断响应,以满足电力、工控等行业应用中严苛的硬实时性要求。 2. RK3562J处理器核心及AMP支持情况 处理器核心 AMP支持情况 3. 中断嵌套机制 中断嵌套是一种有效的中断处理机制,它允许系统根据中断的优先级来响应和处理中断,从而确保关键任务能够及时得到处理,具有实时性高、灵活性好、响应快速等特点,但传统的Linux系统为了简化设计、提高系统的稳定性和可预测性、减少资源竞争和死锁等风险、以及提高兼容性和可维护性,不支持中断嵌套。这种设计选择使得Linux内核在许多应用场景中表现出色,但对于高实时性场景下的应用就显得力不从心了。 4. 案例实践分享 开发板型号:OK3562J-C 资料版本:OK3562-C_Linux 5.10.198_用户资料_R1 测试思路: 使用两个GPIO,分别为GPIO4B1和GPIO0B0,其中GPIO4B1设置为输出,GPIO设置为输入并且中断配置为下降沿触发。硬件上短接GPIO4B1和GPIO0B0。使用Timer4定时器每秒产生一个定时器中断,在中断处理函数中控制GPIO4B1产生一个下降沿并延时,如果出现了GPIO0B0中断处理函数中的打印信息则证明成功发生了中断抢占。 测试步骤: (1)编写测试程序fltest_irq_preempt.c开启TIEMR4和GPIO0B0的中断并且将GPIO0B0配置为下降沿触发,在定时器中断处理函数中将GPIO4B1拉高拉低,使之触发GPIO0B0的中断,在GPIO0B0的中断处理函数中打印一句话来表明当前进入了GPIO0B0的中断; (2)修改中断路由,添加TIMER4和GPIO0的中断并使之绑定给CPU3,并设置TIMER4的中断优先级高于GPIO0; (3)重新编译镜像并烧写; (4)在uboot菜单中打开AMP并重启OK3562J-C开发板,此时RTOS调试串口打印如下: 按tab键可以打印出当前的所有命令: 可以看到我们的命令已经注册成功了。 现在执行我们刚刚编写的fl_irq_test这条命令,即可看到效果: 可以看到GPIO0B0的中断抢占了当前的TIMER4中断。 我们将二者的优先级调换一下再重新编译烧写,然后再次执行该程序,可以看到GPIO0B0的中断在TIMER4中断结束之后才被处理,未发生抢占。
  • 热度 5
    2022-3-29 10:37
    2467 次阅读|
    1 个评论
    制作一个LCD显示的大气压测量仪
    项目利用Arduino IDE环境、BMP180和ESP32 DevKit开发板,是一个基于网页的大气压测量仪,测量结果显示在LCD上。如果设计一个简单的ESP32 Web Server的话,就可连续显示来自BMP180传感器的大气压和温度测量结果。 项目所需物料如下: ESP32开发板 BMP180数字气压传感器 16×2 LCD PCF8574 I2C LCD模组 面包板 跳线 Micro USB线缆 BMP180是基于MEMS技术的超低功耗数字气压传感器,量程为300-1100hPa,同时还能测量0-65°C温度。BMP180模块采用一个3.3V稳压器,支持5V输入,其外形为3.6mm x 3.8mm尺寸的7引脚LGA封装,与MCU的通讯方式为 i2c。 ESP32开发板的默认I­2C引脚分别为GPIO 21 (SDA) 、GPIO 22 (SCL),对应标签为D21、D22。 首先,我们将 BMP180 的VIN引脚与ESP32板的VIN引脚连接,两板的GND引脚也连接。 接下来,我们连接I2C接口。将BMP180的SDA引脚连接于ESP32开发板的GPIO 21引脚(D21),BMP180的SCL引脚连接于GPIO22引脚(D22)。 Manage Libraries…,在搜索框中输入“bmp180”,通过Adafruit安装 Adafruit BMP085 Library 库。 第四步,通过Serial Monitor显示大气压和温度,单位为 hPa 和摄氏度(°C),Serial Monitor显示间隔为3秒。 第五步,通过I2C LCD连接ESP32 BMP180。虽然Serial Monitor能够显示测量的大气压和温度数,但是并不实用。本项目采用PCF8574 I2C LCD模块与16×2字节LCD显示器,显示来自ESP32 BMP180传感器接口的数据。 显示屏和I2C LCD模块(PCF8574)是分开的,需要将LCD模块插入16×2 LCD显示器的背部,而LCD模块的连接引脚只有4个(两个电源、两个数据)。 经过上述五步操作,一个简单的气压测量仪就做成了,我们可将系统装在一个上方开口的小盒子里,这样就更像一个便携式测量仪了。如果需要将结果显示在网页上,可实用ESP32 DevKit的WIFI功能,我们将在后续DIY项目中介绍。
  • 热度 16
    2022-1-6 11:37
    1788 次阅读|
    0 个评论
    为卧室制作一台Wi-Fi控制的RGB LED情趣灯
    1111MicrosoftInternetExplorer402DocumentNotSpecified7.8 磅Normal0 本项目利用 ESP8266 芯片 , 可利用 Wi-Fi 连接, 通过智能手机或其他带有浏览器的终端设备遥控 RGB LED 情趣灯的 颜色,是一个成本不到 10 美元的 DIY 项目。 动手之前,我们需要了解 ESP8266 和 RGB LED 相关信息,如 RGB LED 工作原理, ESP8266 RGB 颜色选择器,带 NodeMCU 的 ESP8266 网页服务器, NodeMCU 固件 刷新等 。 本项目 BOM 如下: (1) 1x ESP8266-12E Wi-Fi 开发板 (2) 1x RGB LED 灯串 (3) 1x 12V 电源: (4)将电压从 12V 降低到 5V 的 稳压转换器等 : 如 带散热片 LM7805 放大器(可选)、步降稳压器(推荐)、 3x NPN 晶体管 2N2222 或替代品、 3x 1k 欧姆电阻器、 1x 面包板、跳线、貌似 情趣 灯的 台灯、白色灯泡。 1. 刷新 ESP8266 模块的 NodeMCU 固件 NodeMCU 是一个固件,允许通过 LUA script 脚本对 ESP8266 模块进行编程,具体方法与在 Arduino 上编程类似。 NodeMCU 编程比较简单,只需几行代码就能建立一个 WiFi 连接,控制 ESP8266 GPIOs ,将 ESP8266 配置成 web 网页服务器。 ESP8266 模块电路的连接 参数 如下: TX RX 3.3V GND 3.3V GND 按照电路原理图连接 ESP8266 模块后,下载 Windows 版本的 NodeMCU Flasher 刷新器。这实际上是一个 .exe 文件,打开它就出现一个小窗口,按刷新键“ Flash ”就立即开始刷新操作。当然,操作之前也可以点选 Advanced 标签,改变某些参数和设置。 完成上述操作,就会出现一个带有检查按钮的绿色圆圈。 2. 下载 ESPlorer IDE 建议使用 ESPlorer IDE 下载。使用这个由 4refr0nt 开发的程序,可将指令发送到 ESP8266 芯片,具体下载及安装程序由乐鑫官网提供。 ESPlorer IDE 安装完成后,会弹出一个上传代码的窗口,按照以下指令就可以上传文件了: ( 1 )将内置编程器的 ESP8266-12E 与 电脑连接。 ( 2 )选择 ESP8266-12E 端口。 ( 3 )按 Open/Close 选项。 ( 4 )选择 NodeMCU+MicroPtyhon 标签。 ( 5 )创建一个名为“ init.lua ”的文件。 ( 6 )点选 Press Save to ESP 选项。 注意,上传的代码文件名必须是 “ init.lua ”,务必牢记自己的网络名 (SSID) 和密码。 如下脚本创建于 2016 年,只适合早期的 Lua 固件版本。如果运行新版 Lua firmware ,必须使用 ESP8266_RGB_Color_Picker_New.lua 脚本: -- Rui Santos -- Complete project details at https://randomnerdtutorials.com wifi.setmode(wifi.STATION) wifi.sta.config("REPLACE_WITH_YOUR_SSID","REPLACE_WITH_YOUR_PASSWORD") print(wifi.sta.getip()) function led(r, g, b) pwm.setduty(5, r) pwm.setduty(6, g) pwm.setduty(7, b) end pwm.setup(5, 1000, 1023) pwm.setup(6, 1000, 1023) pwm.setup(7, 1000, 1023) pwm.start(5) pwm.start(6) pwm.start(7) srv=net.createServer(net.TCP) srv:listen(80,function(conn) conn:on("receive", function(client,request) local buf = ""; buf = buf.."HTTP/1.1 200 OK\n\n" local _, _, method, path, vars = string.find(request, "( +) (.+)?(.+) HTTP"); if(method == nil)then _, _, method, path = string.find(request, "( +) (.+) HTTP"); end local _GET = {} if (vars ~= nil)then for k, v in string.gmatch(vars, "(%w+)=(%w+)&*") do _GET = v end end buf = buf.." "; buf = buf.." "; buf = buf.." "; buf = buf.." "; buf = buf.." "; buf = buf.." "; buf = buf.." "; buf = buf.." ESP Color Picker "; buf = buf.." Change Color "; buf = buf.." "; buf = buf.." function update(picker) {document.getElementById('rgb').innerHTML = Math.round(picker.rgb ) + ', ' + Math.round(picker.rgb ) + ', ' + Math.round(picker.rgb );"; buf = buf.."document.getElementById(\"change_color\").href=\"?r=\" + Math.round(picker.rgb *4.0117) + \"&g=\" + Math.round(picker.rgb *4.0117) + \"&b=\" + Math.round(picker.rgb *4.0117);} "; if(_GET.r or _GET.g or _GET.b) then led(_GET.r, _GET.g,_GET.b) end client:send(buf); client:close(); collectgarbage(); end) end) 3. 连接电路 按照电路图,把 ESP8266-12E Wi-Fi 开发板、 RGB LED 灯串、 12V 电源、 NodeMCU 四个组件连接起来。 重启 ESP8266 , 系统将自动 列印你的序列号和 ESP IP 地址。保存该 IP 地址,以备后用。本项目 的 ESP IP 地址为 192.168.1.105 。 接下来打开浏览器,并输入自己 ESP8266 的 IP 地址,你将会看到: RGB color picker main selecting color 单击输入字段,会开启一个带有颜色的选择器小窗口,用鼠标选择器为你的 RGB LED 脚本选择一个颜色。 最后,选择 “ Change Color ”按钮。 现在,你就可以将自己 制作 的 这个 Wi-Fi 控制三色 LED 情趣灯搬进卧室了。
  • 热度 7
    2019-1-15 15:23
    2261 次阅读|
    0 个评论
    2019年初始,回首与大家携手走过的2018,社区朋友们写下了许多出色的文章。据不完全统计,在过去的一年中, 有上百位博主在面包板发布了上千篇博文。 这其中,有大牛一如既往的干货讲解, “ 电感为什么难学? ”、“怎么搞懂MOS管的应用?”、“Python为什么这么火?”, 工程师爸爸变拆解达人 庖丁解牛分析产品设计。学生朋友上进求知, 记录大赛心得 ;职场新人失业迷茫, 前辈们纷纷支招 。“ 硬件工程师那些事 ”,画板、调试、修板卡,日常的工作看似平淡无奇,但说起来总有很多故事。 四月中兴事件发生后,我们的工程师们纷纷发出“芯”声:“ 贸易战并不可怕,可怕的是不脚踏实地只说不干。 ” 当读到 一位女硬件工程师的职涯经历 ,即使是通宵敲代码,网友也不忘为她加油打气。 一些朋友在2018年经历了升迁或是离职,有的变得更加忙碌,有的拿到了更高薪。 无论如何,2018就此落幕,我们继续同行。 面包板社区2019,依旧会记录电子工程师的精彩。
相关资源