USB для встроенных устройств - разработка драйвера устройства / стек протоколов

(Я бы поставил это в комментарии первым, но, к сожалению, я могу ответить только на данный момент.)

Итак, несколько вещей, которые меня интересуют:

1) Почему Вы ввели функцию, которая дает входное значение индекса $? Просто убедитесь, что все, что вы намереваетесь сделать с входным значением, находится в реактивном контексте, то есть оберните его вокруг наблюдающего, наблюдающего события или обращайтесь к нему во время рендеринга вывода.

2) Почему вы меняете каталог в начале? Вы можете просто указать путь к сценарию Function.R в исходной команде.

Не уверен, что это то, что вы ищете, но я смог запустить функции с помощью следующего кода

library(shiny)

source("Functions.R")

ui <- fluidPage(
  titlePanel("Calculate PM10"),
  sidebarLayout(
    sidebarPanel(
      radioButtons("Index", h3("Chose the funtion you want to execute"),
                   choices = list("hello" = 1,
                                  "bye" = 2,
                                  "testing" = 3),
                   selected = 1)
    ),
    mainPanel(
      # Show a description o the function
      textOutput("Case")

      # button to initialize the funtion

      #HERE show the signs of life of FUNCTION 

    )
  )
)


server <- function(input, output) {

  output$Case<-renderText({
    if (input$Index==1) {
      "Description Funtion 1"
    } else  if (input$Index==2){
      "Description Funtion 2"
    } else  if (input$Index==3){
      "Description Funtion 3"
    }
  })

  #HERE I NEED EXECUTE THE FUNCTION
  observe({
    if (input$Index==1) { 
      print(hello())
    }
    if (input$Index==2) { 
      print(bye())
    }
    if (input$Index==3) { 
      print(testing())
    }
  })

  #note: the funtion is a loop an print signs of life, that's what I want to show in the main panel

}

shinyApp(ui = ui, server = server)

с помощью простого скрипта Functions.R, содержащего

hello <- function() {
  "Hello World!"
}

bye <- function() {
  "Bye World!"
}

testing <- function() {
  "Testing the World!"
}

Надеюсь, это поможет.

8
задан lordhog 13 December 2010 в 23:32
поделиться

5 ответов

Я использовал предыдущее издание USB, Завершенного Jan Axelson. Действительно очень завершенный.

От редакционного обзора:

Теперь в его четвертом выпуске, это Руководство разработчика к интерфейсу Universal Serial Bus (USB) касается всех аспектов разработки проекта, таких как аппаратный дизайн, микропрограмма устройств и программное обеспечение хост-приложения.

3
ответ дан 5 December 2019 в 19:03
поделиться

Мне любопытно, почему Вы выбирали 9S12? Я использовал его в предыдущем задании и не был рад.

  • Это имело паршивую поддержку gcc, таким образом, мы использовали Metrowerks
    • который, возможно, был хорошо для C, но часто генерировал ошибочный C++
    • имел паршивый IDE с двоичными файлами проекта!
  • 9s12 было также медленным, много инструкций, выполняемых в 5 циклах.
  • Не очень эффективное питание, также.
  • никакое многорегистровое циклическое сдвиговое устройство, сделанное операциями, которые распространены в медленном встроенном коде
  • не настолько дешевый.

О единственной вещи мне не нравится больше, 8051. Я использую ARM CortexM3 в своем текущем задании, это является лучше, чем 9S12 каждым способом (более быстрые часы, больше работы, сделанной на часы, меньше потребляемой мощности, более дешевая, хорошая поддержка gcc, 32-разрядным по сравнению с 16-разрядным).

1
ответ дан 5 December 2019 в 19:03
поделиться

При записи драйвера устройства для любого интерфейса (USB, Параллельный порт, и т.д....) код должен был быть разработан, будет зависеть на то, существует ли какая-либо Операционная система (OS), работа RTOS того контроллера Процессора / Микро контроллера. например, если это собирается работать, говорят, что WinCE - Это будет иметь свой собственный комплект разработчика Драйвера и ступает, чтобы сопровождаться в разработке драйвера устройства. То же для любой другой ОС как Linux, symbian.

Если его попытка быть простым микропрограммным кодом (Никакая ОС), который собирается управлять процессором/микроконтроллером, то это - другая ситуация в целом. Таким образом на основе любой из вышеупомянутой ситуации Вы находитесь в, нужно считать и понять:-

1.) Спецификация оборудования макетной платы контроллера процессора / микро макетной платы контроллера - Регистровые файлы, порты, расположение памяти, и т.д.

2.) Спецификация USB

3.) Несколько указателей я нашел быстро. Google shud быть Вашим другом! http://www.lrr.in.tum.de/Par/arch/usb/usbdoc/ - драйвер USB-устройства Linux

http://www.microsoft.com/technet/archive/wce/support/usbce.mspx

- AD

5
ответ дан 5 December 2019 в 19:03
поделиться

Я не знаю, какие аппаратные средства Вы планируете использовать, но предполагаете, что это гибко, STMicro предлагает строку микроконтроллеров с поддержкой USB/SPI и библиотекой C-кода, который может использоваться с их частями. - Я использовал их серию ARM7 micros в течение многих лет с большим успехом.

0
ответ дан 5 December 2019 в 19:03
поделиться

Вот превосходный сайт, поддерживавший Jonathan Valvano, преподавателем в Техасском университете. Он ведет четыре курса там (три студента, один выпускник), все об использовании 9S12 микроконтроллер. Его сайт содержит все примечания лекции, руководства лаборатории, и что еще более важно, файлы начинающего, которые он использует для всех своих классов.

Веб-сайт похож, это с 90-х, но просто выройте вокруг немного, и необходимо найти все, в чем Вы нуждаетесь.

users.ece.utexas.edu/~valvano/

0
ответ дан 5 December 2019 в 19:03
поделиться
Другие вопросы по тегам:

Похожие вопросы: