提示3:每1秒读取一次值,并在按钮和电位器值与前一次不同时打印变化的值。 提示4:存在一个漏洞,即在没有任何按钮操作的情况下,当电位器值变化时,RGB值会自动改变。请修复这个问题。 并且使用[time.sleep(1)]来实现时间延迟。但这并不是最好的方法。 如果你想为相同的结果应用不同的逻辑,请提供一个逻辑示例并请求其应用。 提示5:设置定时器,每1秒读取一次值。使用'get_time'格式而不是'sleep'。current_pot_value = pot_value_scaled() 如果 current_pot_value != prev_pot_value:打印 f"亮度值已更改为: {current_pot_value:.2f}" prev_pot_value = current_pot_value 提示6:将定时器减少到500毫秒。 4. OLED 我已经为OLED创建了一个类,现在我将添加一个新函数,该函数可以在每一行上显示不同的内容。 由于有多个打印函数,函数名变得不太易读。我请求进行修改。 提示1:请在下面的类中添加一个名为'oled'的函数,该函数允许在5行的每一行中输入不同的内容。 提示2:如果某一行没有输入内容,请确保不调用self.oled.text(line5, 5, 48)(或类似针对该行的文本显示调用)。 提示3:请重命名该函数 使用在按钮和电位器中创建的变量,在OLED上显示当前的颜色和亮度值。 由于之前有提示编写历史,因此无需输入额外的变量信息。 提示1:参考下面的函数,请创建一个函数,该函数在OLED的第一行上打印'Color: {rgb}',在第二行上打印'Brightness: {current_pot_value}%',使用提供的cur_rgb和current_pot_value值。 提示2:当值发生变化时,我希望在更改“亮度”时同时更新“颜色”显示,在更改“颜色”时也同时更新“亮度”显示。我希望两者能同时显示,并且只更新发生变化的值。 我们还将使用生成的值创建一个JSON编码函数。 5.灯具控制 创建一个灯具控制设备 首先,我们将使用虚拟数据来生成JSON消息。 利用之前创建的类和函数,根据JSON消息在OLED上显示数据,并控制RGB LED灯。 提示1:这是一个用于解析JSON消息的函数。当“颜色(color)”和“亮度(brightness)”与它们之前的值不同时,创建一个函数来控制Neopixel灯带。请参考Neopixel类。 我已经进行了测试,效果良好。 现在,各个设备的单独功能已经完成,让我们来完善MQTT控制部分。 我将输入两个已完成的代码,并请求将它们合并。 如前所述,与其一开始就要求完整的代码,不如为每个功能编写代码,然后再请求合并,这样更有效率。这种方法可以确保详细功能得到良好实现,并减少尝试次数。 我们还将更改函数名以匹配其功能。 运行代码后,如果出现错误,只需请求修改即可。 提示1:将两个代码合并。 提示2:在调用'update_oled_display'函数时,也使用与'update_oled_display'相同的参数调用'generate_json_message'函数。此外,使用'generate_json_message'返回的消息来执行'publish()'函数。 提示3:修改'update_oled_display'的函数名,以反映其更新后的功能。 提示4:NameError: name 'mqtt' isn't defined(名称错误:未定义名称'mqtt') 对于控制设备,我们将功能分类为MQTT发布、按钮、电位器和OLED。对于灯具设备,我们将功能分类为MQTT订阅、OLED和受控的RGB LED。 由于这是一个简单的任务,我直接编写了代码。 我将与你分享我在项目开发过程中使用的编写提示的过程。 我所有工作的历史记录,请参考这里的chatgpt日志。其中记录了许多尝试和失败。 项目现已完成。这是一个简单的项目,不是吗? 尽管这是一个小项目,但我们完全使用chatGPT进行了开发。 就像编码一样,练习得越多,水平就越高,使用提示似乎也是如此。 虽然体验大型项目的部分开发过程至关重要,但完成小型项目的从始至终也同样重要。 我经常使用chatGPT,但这是我第一次完全使用提示从开始到结束进行开发,我感觉自己比以前更得心应手了。 虽然这是我第一次尝试,还有些生疏,但我会继续更多地使用它。如果将来有更好的项目,我会带着另一个项目回来。 代码 https://github.com/wiznetmaker/RP2040-PicoBricks-HAT-Micropython/tree/main/example/AI_Lamp 原文地址: https://www.hackster.io/wizscarlet5986/mqtt-project-with-pico-and-ethernethat-using-chatgpt-prompts-0c44eb |
粤公网安备 44030702001224号|关于本站|小黑屋|Archiver|手机版|无线电爱好网
( 粤ICP备15040352号 )
GMT+8, 2025-6-4 09:14 , Processed in 0.156000 second(s), 17 queries .