Администрация форума не несёт ответственности за достоверность информации и оставляет за собой право редактировать или в особых случаях даже удалять посты без предупреждения. Спасибо за понимание.

Программирование ATMEL в BASCOM.

Информация о пользователе

Привет, Гость! Войдите или зарегистрируйтесь.


Вы здесь » Программирование ATMEL в BASCOM. » Вопросы - ответы » Помогите с алгоритмом!


Помогите с алгоритмом!

Сообщений 61 страница 90 из 204

61

-NMi- написал(а):

Ставлю флакон коня на то, шо атмелина не успеет отработать ПИД регулятор оборотов + RC5 на 35 или 38 кГц одновременно, ибо ещё нужен ЕЩЁ один опорный таймер для отсчёта единиц времени. А ещё нужно ПИД посчитать, а он не целочисленный наверняка а с плавающей точкой.
А с пульта будут валиться стройные пачки импульсов с частотой почти 40 тысяч раз в секунду!
Давай в железе его наваяй, правда я не представляю как в протеусе всё это просчитать...

Сейчас как раз железо и пилю . RC5 если не успеет то тогда вариант разрешать работу RC5 только если не меряем обороты.

Отредактировано olegkaras (2018-02-06 11:09:30)

0

62

Подскажите можно ли по одну шину i2c повесить DS1307 + 24LC + ADXL345 ?

0

63

I2C на то она и шина, чтоб подключать много разных датчиков.

0

64

olegkaras написал(а):

Подскажите можно ли по одну шину i2c повесить DS1307 + 24LC + ADXL345 ?

http://www.gaw.ru/html.cgi/txt/interface/iic/index.htm

0

65

Как настроить порт чтоб смотреть что на входе только в определенном месте программы ?

0

66

Настраиваешь его на вход в любом месте и смотришь что на входе.
***
В любом месте программы ты можешь конфигурировать порты как ты хочешь!

+1

67

Как настроить в Atmege128 порт PG1 как выход ?

0

68

https://avrhelp.mcselec.com/index.html?config_port.htm

0

69

Порт В я настраиваю как выход и он в протеусе работает а порт G не в какую , может модель в протеусе не работает с этим портом ?

Отредактировано olegkaras (2018-02-08 16:25:42)

0

70

Может, протеус - резиновая женщина: не готовит, не разговаривает, не активная.

0

71

RDW написал(а):

Может, протеус - резиновая женщина: не готовит, не разговаривает, не активная.

Может, но хоть порты должны работать ?

0

72

olegkaras написал(а):

Может, но хоть порты должны работать ?

PORTG = Output

Только что специально проверил. ;)
Протеус 8.4

0

73

Мда... ставлю фторой флакон коня на то, что у него ничего с его проектами не получится!     :rofl:

0

74

-NMi- написал(а):

ставлю фторой флакон коня

Не спейся.  :flag:

0

75

Тут скорее всего со смеху лопнуть можно  :D  , чем нажраццо...
Проект конечно амбициозен, но, с такими знаниями лучше бы попросил у нас всех написать ему по одному кусочку кода. Воспрашать как поменять GPIO на вход или выход вводит меня в перманентное ржачное состояние.
Прикинь, как он будет "на интах" RC5 обрабатывать???  :D
Термин "векторное программирование" наверняка ему не знаком, а он "хочет"
Хоть бы выложил кусочек кода обработчика любого IntX просто для посмотреть, как он кодить могЁт...

0

76

Да никто этим заниматься не будет + надо представлять ответственность, вот оторвет челу руку этим мотором от стиралки, кто будет виноват? ;)

0

77

У выводов порта есть альтернативные функции. Нужно посмотреть какие у PG1 и если они есть, то отключить.

0

78

С портами разобрался .

0

79

Слава богу!   Когда код то хоть будет?  Обработчик Int2 интересен...

0

80

Можно ли в BASCOM задать значение EEPROM что бы эти значения залить в МК  (первоначальное значение EEPROM при прошивке)?

0

81

Конечно же можно.

0

82

olegkaras написал(а):

Можно ли в BASCOM задать значение EEPROM что бы эти значения залить в МК  (первоначальное значение EEPROM при прошивке)?

В конце программы создаём структуру. Например.
$eeprom
Data &H6F , &H12 , &H83 , &H3A                             
Data &H6F , &H12 , &H83 , &H3A                           
Data &H00 , &H00 , &H80 , &H41                           
Data &H3C                                                   
Data &H3C                                                   
$eepromhex
$data
Можно писать просто десятичными цифрами. Строка $eepromhex создаст файл для заливки в контроллер.
При программировании пишем саму программу и заливаем свои данные в EEPROM.
Первая строка запишется по адресу 0, вторая по адресу 4 т.к. в первой строке 4 байта и т.д.
В моём примере первые три строки содержат значения SINGLE, две последние BYTE.
В программе пользуемся оператором READEEPROM.
Переменные.
DIM A as single
Dim B as single
Dim C as single
Dim D as byte
Dim E as Byte

'Прочесть память
Readeeprom A, &H00
Readeeprom B, &H04
Readeeprom C, &H08
Readeeprom D, &H0C
Readeeprom E, &H0D

Смотри HELP.
Мне больше по душе 16-ричная система, а ты можешь пользоваться обычной 10-чной.

Отредактировано sva-don (2018-02-16 09:54:59)

0

83

Предполагаю, он не поймёт систему  :D

0

84

-NMi-, троллить не надоело?

0

85

Дык я вроде и не тролил  :D
Нравицца мне современная молодеШь, тут памаги, там падскажи  :rofl:
Ставлю третий флакон - ничё у него не получится.

0

86

-NMi- написал(а):

Дык я вроде и не тролил

Очень многие ваши сообщения попадают под определение флуда или троллинга.
Здесь ведь форум по баскому, а не социальная сеть для развлечений.

+5

87

При   подключении этой библиотеки $lib "mcsbyte.lbx"      компилятор выдает кучу 61- вых ошибок , что я не так делаю ?

Отредактировано olegkaras (2018-02-18 22:03:40)

0

88

olegkaras написал(а):

При   подключении этой библиотеки $lib "mcsbyte.lbx"      компилятор выдает кучу 61- вых ошибок , что я не так делаю ?(Сегодня 22:03:40)

Не подключайте её, польза от неё была в ранних версиях Bascom

0

89

Если пользы от неё нет, то зачем она включена в комплект?)

0

90

Код:
$regfile = "attiny2313.dat"
$crystal = 4000000
Config Lcdpin = Pin , Db4 = Portb.4 , Db5 = Portb.5 , Db6 = Portb.6 , Db7 = Portb.7 , E = Portb.3 , Rs = Portb.2
Config Lcd = 16 * 2
Config Pind.5 = Input
Config Pind.4 = Input
Config Sda = Portd.1
Config Scl = Portb.0
Dim Seco As Byte
Dim Mine As Byte
Dim Hour As Byte
Initlcd
Cls
Cursor Off
Do
I2cstart
I2cwbyte &HD0
I2cwbyte &H00
I2cstart
I2cwbyte &HD1
I2crbyte Seco , Ack
I2crbyte Mine , Ack
I2crbyte Hour , Nack
I2cstop
Seco = Makedec(seco)
Mine = Makedec(mine)
Hour = Makedec(hour)
Locate 1 , 1
Lcd Hour ; ":" ; Mine ; ":" ; Seco ; "    "
If Pind.5 = 0 Then
Incr Mine
Mine = Makebcd(mine)
I2cstart
I2cwbyte &HD0
I2cwbyte 1
I2cwbyte Mine
I2cstop
Waitms 100
End If
If Pind.4 = 0 Then
Incr Hour
Hour = Makebcd(hour)
I2cstart
I2cwbyte &HD0
I2cwbyte 2
I2cwbyte Hour
I2cstop
Waitms 100
End If
Loop
End
olegkaras написал(а):

За основу взял вот этот пример.


Как запустить DS1307 в железе , в протеусе часы идут а в железе стоят ?

Отредактировано olegkaras (2018-02-19 15:27:12)

0


Вы здесь » Программирование ATMEL в BASCOM. » Вопросы - ответы » Помогите с алгоритмом!