سلام من میخواستم ببینم برای دستور digitalWrite جز حالت های HIGH و LOW گزینه ای داریم که خودش اتوماتیک مقدار خروجی رو بخونه و هرچی بود برعکسش کنه . یا کلا برای اینکه با یه دستور مقدار خروجی هرچی بود عکسش کنیم از چه دستوری باید استفاده کرد ؟
ممنون
سلام من میخواستم ببینم برای دستور digitalWrite جز حالت های HIGH و LOW گزینه ای داریم که خودش اتوماتیک مقدار خروجی رو بخونه و هرچی بود برعکسش کنه . یا کلا برای اینکه با یه دستور مقدار خروجی هرچی بود عکسش کنیم از چه دستوری باید استفاده کرد ؟
ممنون
سلام
برای کار شما دستورdigitalReadیعنی مثلا ورودی پایه 13رو بخون و با دستورif/elseاگر اینجوری بود پایه 12فعال بشه
سلام مگه میتونیم دستور digitalWrite رو با یه متغیر تعریف کنیم ؟نمیشه که ! حتما باید بگیم یا HIGH کن یا LOW . . .
سلام نه مهندس منظورم این نیست .
شما فرض کن نمیدونی خروجیت بعد یه سری فعل و انفعالات 1 یا 0 . فقط میخوای اگر یه ورودی دادی به برد خروجی هرچی هست فقط مقدارش عوض بشه. اگر 0 بود بشه 1 و اگر 1 بود بشه 0
سلام
هیچ مشکلی نداره که ارگومان دوم تابع digitalWrite رو یه متغیر بزارید:
کد:void setup() { // initialize digital pin 13 as an output. pinMode(13, OUTPUT); } // the loop function runs over and over again forever void loop() { int data=0; digitalWrite(13, data); // turn the LED on (HIGH is the voltage level) delay(1000); // wait for a second digitalWrite(13, data); // turn the LED off by making the voltage LOW delay(1000); // wait for a second }
مرسی یعنی برای کاری که من میخوام بکنم این کد درسته ؟
int a = digitalRead(output);
b= !a;
digitalWrite (output,b);
مهندس بی زحمت راجب اون یکی پست هم کمکم کنید. خالی کردن بافر و... ممنون
بله میتونید همین کد رو استفاده کنید.
کد:/* Blink Turns on an LED on for one second, then off for one second, repeatedly. Most Arduinos have an on-board LED you can control. On the Uno and Leonardo, it is attached to digital pin 13. If you're unsure what pin the on-board LED is connected to on your Arduino model, check the documentation at http://www.arduino.cc This example code is in the public domain. modified 8 May 2014 by Scott Fitzgerald */ // the setup function runs once when you press reset or power the board void setup() { // initialize digital pin 13 as an output. pinMode(13, OUTPUT); } // the loop function runs over and over again forever void loop() { int a = 0; digitalWrite (13, a); delay(1000); // wait for a second int b = !a; digitalWrite(13, b); // turn the LED off by making the voltage LOW delay(1000); // wait for a second }
این کد مقدار اولیه رو 0 میده و پایه 13 رو خاموش میکنه . میخوایم پایه خروجی هرچی هست همون بمونه .
این کد درسته ؟
int a = digitalRead(output);
یعنی میتونیم بگیم مقدار خروجی رو بخون ؟