Как правильно задать действие при старте программы - C#

Узнай цену своей работы

Формулировка задачи:

есть рабочая кнопка в форме
        private void button7_Click(object sender, EventArgs e)
        {
            ledOn = !ledOn;       // 13 порт
            if (ledOn)
                dev.PORTC |= (1 << 0);         // 13 порт
            else
                dev.PORTC &= 0xFF ^ (1 << 0);       // 13 порт
        }
Почему если я её функцию прописываю при старте программы,выполняется только dev.PORTC |= (1 << 0);не смотря на условие
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using AvrUsbDevice;
 
namespace LedTest
{
    public partial class Form1 : Form
    {
        bool ledOn = false;                 // Флаг включен (true) или нет (false) светодиодик на плате
        ushort vid = 0x16C0, pid = 0x05DC;  // Тут комментарии излишни - это VID и PID
        ATMega16 dev;                       // Объявляем объект типа ATMega16
 
        public Form1()
        {
            InitializeComponent();
        }
 
        private void Form1_Load(object sender, EventArgs e)
        {
            dev = new ATMega16(vid, pid);   // Создаем объект dev класса ATMega16. 
            if (!dev.IsOpen())              // Если есть проблемы с USB - сообщим и выйдем
            {
                MessageBox.Show(String.Format("Невозможно найти устройство vid = 0x{0:X}, pid = 0x{1:X}", vid, pid),
                                              "Ошибка USB", MessageBoxButtons.OK, MessageBoxIcon.Error);
                Close();
            }
            else                            // Если все хорошо, настроим микроконтроллер по USB
            {
                dev.DDRB |= 0x01;           // Пин 0 порта B - на вывод
                dev.PORTB &= 0xFE;          // Выключим светодиодик на плате
            }
                        ledOn = !ledOn;       // 13 порт
            if (ledOn)
                dev.PORTC |= (1 << 0);         // 13 порт
            else
                dev.PORTC &= 0xFF ^ (1 << 0);       // 13 порт
            Close();
        }

        }

    }

Решение задачи: «Как правильно задать действие при старте программы»

textual
Листинг программы
   private void button1_Click(object sender, EventArgs e)
        {
            ledOn = !ledOn;      
            if (ledOn)
                dev.PORTC |= (1 << 6);
            else
                dev.PORTC &= 0xFF ^ (1 << 6);
        }

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

5   голосов , оценка 4 из 5
Похожие ответы