- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我是 C 编程初学者,对以下代码有一些问题:
我的项目很简单:当输入 i2 高或 i3 高或 i4(模拟值)< 700 时然后输出o1为高电平否则如果 i1 为高那么o1为低电平否则o1为高
我的代码:
#define F_CPU 8000000UL
#include <avr/io.h>
#include <util/delay.h>
#include "iomacros.h"
int main(void) {
// Change to 8MHz clock speed (Clock Division = 1)
CCP = 0xD8;
CLKPSR = 0x00;
// Define pins
#define OUTPUT_1 1,A
#define INPUT_1 2,A
#define INPUT_2 3,A
#define INPUT_3 4,A
// Set up the ADC
ADCSRA |= (1 << ADEN) | (1 << ADPS2); // Enable ADC = 16
ADMUX |= (1 << MUX1) | (1 << MUX0); // Connect ADC3 input on PA6
DIDR0 |= (1 << ADC3D); // Power saving feature
out(OUTPUT_1); // set OUTPUT_1 as an output
inp(INPUT_1); // set INPUT_1 as an input
pullup(INPUT_1); // activate pullup for INPUT_1
inp(INPUT_2); // set INPUT_1 as an input
pullup(INPUT_2); // activate pullup for INPUT_2
inp(INPUT_3); // set INPUT_1 as an input
pullup(INPUT_3); // activate pullup for INPUT_3
on(OUTPUT_1);
// forever loop
while (1) {
ADCSRA |= (1 << ADSC); // start single conversion
while (ADCSRA & (1 << ADSC)) {} // wait until conversion is done
uint16_t INPUT_4 = ADCL | (ADCH << 8); // Store in INPUT_4
if (get(INPUT_2) == 1 || get(INPUT_3) == 1 || INPUT_4 > 800) {
on(OUTPUT_1);
} else {
if (get(INPUT_1) == 1) {
off(OUTPUT_1);
} else {
on(OUTPUT_1);
}
}
_delay_ms(100);
}
}
出于某种原因,即使 if (get(INPUT_2) == 1 || get(INPUT_3) == 1 || INPUT_4 > 800) 为 true,i1 也会在高电平时禁用 o1。一些帮助表示赞赏。谢谢!
最佳答案
该行缺少括号:
if (get(INPUT_1)==1{
应该是:
if (get(INPUT_1)==1){
您的代码没有正确缩进,错误不容易被发现。
关于c - Atmel Studio AtTiny104 - 简单代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37361466/
我是 ATtiny 芯片编程新手。我在 Arduino 上运行了与此等效的程序并且它有效,但是当在 ATtiny2313 上运行它时,虽然没有出现错误消息,但程序似乎卡住了。所有 PORTB 都连接到
我使用此接线图将 ATTiny85 连接到 NRF24L01+ 模块:diagram。 ATTiny85 会定期进入和退出 sleep 状态,以向接收器 Arduino Uno 发送一些值。如果 AT
我正在尝试将我的 ATtiny 置于 sleep 模式,然后将其唤醒。我使用这段代码让它进入休眠状态: void go_to_sleep(){ is_sleeping = true; RED_HIGH
在此站点 http://www.mikrocontroller.net/articles/Konzept_f%C3%BCr_einen_ATtiny-Bootloader_in_C (抱歉,它是德语的
我想知道 ATTiny,特别是 ATTiny24 如何在内存中存储 32 位无符号整数。我正在尝试获取 32 位值并将其写入 EEPROM 中的 32 位位置。我曾尝试使用一个简单的掩码,但每次我尝试
我是一名优秀的程序员,十分优秀!