- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我已经编写了读取开关状态的代码,如果按 3 次 # 则退出。
void allkeypadTest(void)
{
static uint8_t modeKeyCount=0;
LÀM
{
uint8_t key=getKeyStatus();
if(key)
{
if(key=='#')
{
modeKeyCount++;
//pulseIODevice(LED1,1,500,200);
}
khác
{
pulseIODevice(LED1,key-0x30,500,200);
}
}
}while(modeKeyCount<3);
}
但是只要我输入一次#key,循环就会退出。如果我按其他键,则行为正常。但是,如果我取消注释 if(key=='#')
部分下的 pulseIODevice
,行为是正常的。 pulseIODevice
将在特定时间点切换 LED 特定时间并将 PWM 传递给它。我对我的代码出了什么问题感到困惑。请注意,如果未检测到任何键,getKeyStatus
将返回 '\0'
(空),并返回 1x4 键盘键的 ASCII 值(ASCII 值为 3、6、9并且只有#)
1 Câu trả lời
在检测到按键状态后,您可能希望等到它变回正常(没有按键)后再继续
这样做改变
uint8_t key=getKeyStatus();
成为
uint8_t key = getKeyStatus();
while (0 != getKeyStatus())
{
/* Do nothing.
Shouldn't loop too long if not abused by holding the key pressed. */
/* if available add some milli sec delay here. */
}
一点点效率更高,甚至更准确
uint8_t key = getKeyStatus();
if ( 0 != key)
{
LÀM
{
/* Do nothing.
Shouldn't loop too long if not abused by holding the key pressed. */
/* If available add some milli sec delay here. */
} while (0 != getKeyStatus());
}
背景:
根据定义,要根据状态的变化(此处为“按下”、“向上”)检测事件(此处为“按键”),您需要测试不止一次。
关于c - 做 while 循环过早退出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41648214/
Tôi có một câu hỏi liên quan đến cú pháp JavaScript. Tôi thực sự đã nghĩ ra mã trong khi tự học hướng dẫn về ngăn xếp MEAN (https://thinkster.io/mean-stack-tutorial#adding-aut
Trong sách của tôi, nó sử dụng một cái gì đó tương tự như thế này: for($ARGV[0]) { Expression && do { print "..."; last; }; ... } Vòng lặp for không phải là chưa đầy đủ sao? Ngoài ra, nghĩa của từ do là gì?
Tôi đã viết mã đọc trạng thái chuyển đổi và thoát nếu nhấn # 3 lần. void allkeypadTest(void) { tĩnh uint8_t modeKeyCount=0; thực hiện
Vì vậy, đối với bài tập tôi phải làm tuần trước, tôi phải tạo một trò chơi đoán trong Java bằng cách sử dụng 4 vòng lặp do-while và các câu lệnh if. Tôi không thể hoàn thành bài tập một cách thành công và lớp học đã tiếp tục mà không cung cấp cho tôi bất kỳ sự trợ giúp nào. Nếu ai đó có thể kiểm tra
int i=1,j=0,n=10,k; do{ j+=i; i<<1; printf("%d\n",i); // printf("%d\n",12<<1); }trong khi
Mã này dành cho các nút bấm của máy tính tiền cơ bản. Khi tôi nhấn nút, một hộp thoại nhập liệu sẽ hiện ra để bạn nhập giá của sản phẩm. Vấn đề tôi gặp phải là tôi không thể tìm ra cách sử dụng vòng lặp do...while để hộp thoại đầu vào bật lên sau khi đã nhập dữ liệu. Tôi hy vọng nó luôn phục hồi
Khi tôi sửa đổi một chuỗi hoặc một biến khác trong vòng lặp, điều kiện của nó có được đánh giá lại mỗi lần không? Hoặc một lần trước khi vòng lặp bắt đầu std::string a("aa"); do { a = "aaaa"; } while(a.size<10)
Tôi vừa viết bài này nhưng không tìm ra được vấn đề. Tôi đã sử dụng các khối mã và viết lỗi này: mong đợi 'while' trước '{' token === Bản dựng hoàn tất: 1 lỗi
do { printf("Nhập số (0-6): ", ""); scanf("%d", &Num); }while(Num >= 0 && Num có nghĩa là "vượt quá", <>
Tôi có một vector chứa 10 phần tử (để đơn giản, tất cả các phần tử đều thuộc cùng một lớp, gọi là "a"). Điều tôi muốn làm là kiểm tra xem chữ "A" không phải a) che đi bức tường hay b) che đi một chữ "A" khác. Tôi có một hàm va chạm thực hiện việc này.
Xin chào, đây là câu hỏi thứ hai của tôi. Tôi có bảng sau |-----|-------|------|------| |._id.|..INFO.|.DONE.|.LAST.| |..1..|...A...|...N..|.
Câu hỏi này đã có câu trả lời ở đây: Đã đóng cách đây 12 năm. Có thể trùng lặp: Tại sao đôi khi có do/while và if/e vô nghĩa
Từ wikibook về F# có một phần nhỏ nói rằng: let! làm gì?# let! chạy một đối tượng bất đồng bộ trên luồng riêng của nó, sau đó nó
Tôi đã tìm thấy hàm sau trong cuốn sách Real World Haskell: namesMatching pat | not (isPattern pat) = do exists do
Tôi có một trường hợp sử dụng tương tự như sau, trong đó tôi tạo nhiều biểu đồ và sắp xếp chúng thành một số bố cục trang bằng gridExtra và cuối cùng lưu chúng thành PDF bằng ggsave: p1 % mutate(label2
Khi tôi sử dụng các câu lệnh let lồng nhau với vòng lặp for, tôi không thể chạy lệnh [:tr] bên trong mà không có lệnh (do (html5 ..)). (cột-cài đặt-bố cục-defpartial [&
Lỗi này xảy ra khi thực hiện vagrant up: anr@anr-Lenovo-G505s ~ $ vagrant up Đưa máy 'mặc định' lên với 'virtua
# ########################################################### # Chương trình con để thêm dữ liệu vào bảng Blas
Tôi muốn tạo một máy chủ đọc để kiểm tra định dạng ngày tháng cụ thể. Ngoài ra, mục đích là kiểm tra xem thông tin người dùng nhập có chính xác không, nếu không thì lời nhắc sẽ hiện ra lần nữa. Khi tôi mới học lập trình, tôi đã tìm thấy đoạn mã này và nó có vẻ hoàn hảo. Tôi vẫn đang làm việc trên "until" do {
Tôi đang làm theo hướng dẫn này để đào tạo về Google Cloud Machine Learning Engine. Tôi đã làm theo từng bước nhưng gặp lỗi khi gửi tác vụ ml lên đám mây. Tôi đã chạy lệnh này. sam@sam-VirtualBox:~/models/r
Tôi là một lập trình viên xuất sắc, rất giỏi!