Пример #1
0
        public Form1()
        {
            try
            {
                DescFile = Path.GetTempFileName();
                byte[] tmpBytes          = Resources.asmDesc;
                var    streamWithASMDesc = new FileStream(DescFile, FileMode.OpenOrCreate);
                streamWithASMDesc.Write(tmpBytes, 0, tmpBytes.Length);
                streamWithASMDesc.Close();
            }
            catch (Exception)
            {
                DescFile = null;
            }

            try
            {
                SLoader = Path.GetTempFileName();
                byte[] tmpBytes          = Resources.ReallySmallProgramLoader;
                var    streamWithASMDesc = new FileStream(SLoader, FileMode.OpenOrCreate);
                streamWithASMDesc.Write(tmpBytes, 0, tmpBytes.Length);
                streamWithASMDesc.Close();
            }
            catch (Exception)
            {
                SLoader = null;
            }

            InitializeComponent();

            PS = new ComPortSettings();
            PS.SetPortSet();

            SFD = new SaveFileDialog
            {
                InitialDirectory = Directory.GetCurrentDirectory(),
                Filter           = "asm files (*.asm)|*.asm",
                FilterIndex      = 2,
                RestoreDirectory = true,
            };
            OFD = new OpenFileDialog
            {
                InitialDirectory = Directory.GetCurrentDirectory(),
                FilterIndex      = 2,
                RestoreDirectory = true,
            };
            BinGen       = new BinaryGenerator();
            tsFiles.Dock = DockStyle.Fill;
            panel1.Dock  = DockStyle.Fill;
            stStrip.Items.Add("Start work with opening or creating new file");
            stStrip.Items.Add("");
            //stStrip.Items.Add("          Current COM-Port: ");
            //stStrip.Items[2].TextAlign = ContentAlignment.MiddleRight;
        }
Пример #2
0
        public PortSettings(ComPortSettings tmp)
        {
            InitializeComponent();
            parity.Items.Add(Parity.Even);
            //parity.Items.Add(Parity.Mark);
            parity.Items.Add(Parity.None);
            parity.Items.Add(Parity.Odd);
            //parity.Items.Add(Parity.Space);
            parity.SelectedItem  = tmp.par;
            parity.DropDownStyle = ComboBoxStyle.DropDownList;

            baud.Items.Add(2400);
            baud.Items.Add(4800);
            baud.Items.Add(9600);
            baud.Items.Add(19200);
            baud.SelectedItem  = tmp.baud;
            baud.DropDownStyle = ComboBoxStyle.DropDownList;

            stopbits.Items.Add(StopBits.None);
            stopbits.Items.Add(StopBits.One);
            stopbits.Items.Add(StopBits.OnePointFive);
            stopbits.Items.Add(StopBits.Two);
            stopbits.SelectedItem  = tmp.sb;
            stopbits.DropDownStyle = ComboBoxStyle.DropDownList;

            //databits.Items.Add(5);
            //databits.Items.Add(6);
            //databits.Items.Add(7);
            databits.Items.Add(8);
            databits.SelectedItem  = tmp.databits;
            databits.DropDownStyle = ComboBoxStyle.DropDownList;

            startAddr.Text = "0x" + Convert.ToString(Form1.strtAddr, 16).ToUpper();
            readFrom.Text  = "0x" + Convert.ToString(Form1.readFrom, 16).ToUpper();
            readTo.Text    = "0x" + Convert.ToString(Form1.readTo, 16).ToUpper();

            startAddr.Focus();
            KeyPreview = true;
        }
Пример #3
0
        private byte[] GetNewSettings(ComPortSettings PS)
        {
            string USARTSet = "";
            byte   timerSet = 0;

            switch (PS.sb)
            {
            case StopBits.None:
                USARTSet += "00";
                break;

            case StopBits.One:
                USARTSet += "01";
                break;

            case StopBits.Two:
                USARTSet += "11";
                break;

            case StopBits.OnePointFive:
                USARTSet += "10";
                break;
            }
            switch (PS.par)
            {
            case Parity.None:
                USARTSet += "00";
                break;

            case Parity.Odd:
                USARTSet += "01";
                break;

            case Parity.Even:
                USARTSet += "11";
                break;
            }
            switch (PS.databits)
            {
            case 5:
                USARTSet += "00";
                break;

            case 6:
                USARTSet += "01";
                break;

            case 7:
                USARTSet += "10";
                break;

            case 8:
                USARTSet += "11";
                break;
            }
            if (PS.baud == 19200)
            {
                USARTSet += "01";
            }
            else
            {
                USARTSet += "10";
            }

            switch (PS.baud)
            {
            case 2400:
                timerSet = 0x34;
                break;

            case 4800:
                timerSet = 0x1A;
                break;

            case 9600:
                timerSet = 0x0D;
                break;

            case 19200:
                timerSet = 0x68;
                break;
            }
            //0x34 - 2400
            //0x1A - 4800
            //0x0D - 9600
            //0x68 - 19200 + 7E -> 7D
            var temp = new byte[2];

            temp[0] = timerSet;
            temp[1] = Convert.ToByte(USARTSet, 2);
            return(temp);
        }