(Borland C++Builder 6) [Статья 8] (TxRxV1)(CRC)(Контрольная сумма)(Обмен)(C/C++)

(Borland C++Builder 6) [Статья 8] (TxRxV1)(CRC)(Контрольная сумма)(Обмен)(C/C++)   Описание : У нас есть задача узкая задача: обезопасить передаваемые данные, причем ещё уменьшим решаемую задачу, а именно пусть наши сообщения не могут иметь больше 4-ех байт данных и первым байтом идет байт в котором указано число байт в сообщении, таким образом Байт размера сообщения + один, […]

(Borland C++Builder 6) [Статья 7] (TxRxV1)(FTDI)(ftd2xx)(FT_Write)(FT_Read)(Обмен)(C/C++)

(Borland C++Builder 6) [Статья 7] (TxRxV1)(FTDI)(ftd2xx)(FT_Write)(FT_Read)(Обмен)(C/C++) Основные характеристики : 1) Весь протокола USB обрабатываются на чипе, программирование не требуется. 2) Интерфейс UART поддержка 7 или 8 битов данных, 1/ 2 стоп-бита и odd/even/mark/space/no parity. 3) FIFO буферы приема и передачи для высокой пропускной способности. 4) Встроенный генератор. Внешнего генератора или резонатора требуется. 5) Полностью интегрированная фильтрация питания AVCC. Внешних […]

(Borland C++Builder 6) [Статья 6] (TxRxV1)(SLIP)(ESC)(ESC)(Обмен)(Протокол)(C/C++)

Протокол  SLIP (Serial Lines Internet Protocol) Описание: Каждый протокол обладает свойством инкапсулировать данные. Протокол SLIP использует специальные символы для ограничения кадра данных в последовательном канале. Для того чтобы распознать границы SLIP-кадров, передаваемых по последовательной линии связи, и отделить один кадр от другого, протокол SLIP предусматривает использование специального символа END, значение которого в шестнадцатеричном представлении равно C0. Применение специального […]

STM32 STM32VL Discovery STM32F100RBT6 (урок 8) The advanced-control timers(1), таймеры

STM32 STM32VL Discovery STM32F100RBT6 (урок 8) The advanced-control timers(1), таймеры Таймер – одна из самых полезных вещей в микроконтроллере и основная его задача – отсчитывание точных интервалов времени. На отладочной плате STM32VL Discovery установлен микроконтроллер STM32F100RBT6, который имеет следующие таймеры: Basic timers (TIM6, TIM7) – самый простой таймер, который умеет только генерировать прерывания в заданный промежуток […]

(Borland C++Builder 6) [Статья 5] char (*MYfun) (char, char)(Указатель на функцию)(C/C++)

(Borland C++Builder 6) [Статья 5] char (*MYfun) (char, char)(Указатель на функцию)(C/C++) Описание Указатели это чрезвычайно мощный инструмент в программировании. С помощью указателей некоторые вещи в программировании можно сделать намного проще и при этом эффективность работы вашей программы значительно повысится. Указатели даже позволяют обрабатывать неограниченное количество данных. Например, с помощью указателей можно изменять значения переменных внутри функции, при […]

(Borland C++Builder 6) [Статья 4] (FIFO)(LIFO)(BUF)(Буфер)(Память)(C/C++)

(Borland C++Builder 6) [Статья 4] (FIFO)(LIFO)(BUF)(Буфер)(Память)(C/C++) Общее Параллельный или произвольный доступ это именно то, что было везде на сайте, когда мы что то хранили в памяти или что-то от туда читали. Мы могли зарезервировать любые объемы памяти и как угодно читать её и писать туда. Лучше для примера взять массив BUF[100] мы можем писать операции […]

(Borland C++Builder 6) [Статья 3] (ПК)(COM)(FT232RL)(USB)(UART)(C/C++)

(Borland C++Builder 6) [Статья 3] (ПК)(COM)(FT232RL)(USB)(UART)(C/C++) Основные характеристики : 1) Весь протокола USB обрабатываются на чипе, программирование не требуется. 2) Интерфейс UART поддержка 7 или 8 битов данных, 1/ 2 стоп-бита и odd/even/mark/space/no parity. 3) FIFO буферы приема и передачи для высокой пропускной способности. 4) Встроенный генератор. Внешнего генератора или резонатора требуется. 5) Полностью интегрированная фильтрация питания AVCC. Внешних […]

STM32 STM32VL Discovery STM32F100RBT6 (урок 7) General-purpose timers(15/16/17), таймеры

STM32VL Discovery STM32F100RBT6 (урок 7) General-purpose timers(15/16/17), таймеры Таймер – одна из самых полезных вещей в микроконтроллере и основная его задача – отсчитывание точных интервалов времени. На отладочной плате STM32VL Discovery установлен микроконтроллер STM32F100RBT6, который имеет следующие таймеры:Basic timers (TIM6, TIM7) – самый простой таймер, который умеет только генерировать прерывания в заданный промежуток времени, но при […]

(Borland C++Builder 6) [Статья 2] (stdlib.h)(malloc)(calloc)(realloc)(free)(new)(delete)(C/C++)

(Borland C++Builder 6) [Статья 2] (stdlib.h)(malloc)(calloc)(realloc)(free)(new)(delete)(C/C++) Динамическое выделение памяти Так, мы встречались с переменными про которые можно сказать, что они глобальные или локальные. Создание таких переменных это резервирование определенного количества памяти для хранения значений (другими словами выделение памяти). Что касается глобальных переменных, то адреса таких переменных определяются на этапе компиляции и остаются неизменными. А вот […]

(Borland C++Builder 6) [Статья 1] (struct)(union)(PORT)(C/C++)

(Borland C++Builder 6) [Статья 1] (struct)(union)(PORT)(C/C++) Описание проблемы: Часто возникает необходимость работать с отдельными битами различных переменных. Так как же это можно сделать удобно? ПЕРВЫЙ ВАРИАНТ: #define SETBIT(x,b) (x|(1<<b)) //устанавливаем опр бит #define CLRBIT(x,b) (x&~(1<<b)) //сбрасываем опр бит #define GETBIT(x,b) ((x>>b)&1) //спрашиваем опр бит (тру,фолс) ВТОРОЙ ВАРИАНТ: // структура 8 бит(: – это указываем сколько […]