UART là một trong những giao thức truyền thông giữa thiết bị với thiết bị được sử dụng nhiều nhất. Vậy chúng được định nghĩa thế nào, đặc điểm và ứng dụng ra sao, BKAII cùng các bạn tìm hiểu nhé!

UART (Universal Asynchronous Receiver-Transmitter – Bộ truyền nhận dữ liệu không đồng bộ) là một giao thức truyền thông phần cứng dùng giao tiếp nối tiếp không đồng bộ và có thể cấu hình được tốc độ

Giao thức UART là một giao thức đơn giản và phổ biến, bao gồm hai đường truyền dữ liệu độc lập là TX (truyền) và RX (nhận). Dữ liệu được truyền và nhận qua các đường truyền này dưới dạng các khung dữ liệu (data frame) có cấu trúc chuẩn, với một bit bắt đầu (start bit), một số bit dữ liệu (data bits), một bit kiểm tra chẵn lẻ (parity bit) và một hoặc nhiều bit dừng (stop bit).

Thông thường, tốc độ truyền của UART được đặt ở một số chuẩn, chẳng hạn như 9600, 19200, 38400, 57600, 115200 baud và các tốc độ khác. Tốc độ truyền này định nghĩa số lượng bit được truyền qua mỗi giây. Các tốc độ truyền khác nhau thường được sử dụng tùy thuộc vào ứng dụng và hệ thống sử dụng.

Nguyên lý hoạt động

Uart truyền dữ liệu nối tiếp, theo 1 trong 3 chế độ:

  • Simplex: Chỉ tiến hành giao tiếp một chiều
  • Half duplex: Dữ liệu sẽ đi theo một hướng tại 1 thời điểm
  • Full duplex: Thực hiện giao tiếp đồng thời đến và đi từ mỗi master và slave

Chân Tx (truyền) của một chip sẽ kết nối trực tiếp với chân Rx (nhận) của chip khác và ngược lại. Quá trình truyền dữ liệu thường sẽ diễn ra ở 3.3V hoặc 5V. Uart là một giao thức giao tiếp giữa một master và một slave. Trong đó 1 thiết bị được thiết lập để tiến hành giao tiếp với chỉ duy nhất 1 thiết bị khác.

Dữ liệu truyền đến và đi từ Uart song song với thiết bị điều khiển. Khi tín hiệu gửi trên chân Tx (truyền), bộ giao tiếp Uart đầu tiên sẽ dịch thông tin song song này thành dạng nối tiếp và sau đó truyền tới thiết bị nhận. Chân Rx (nhận) của Uart thứ 2 sẽ biến đổi nó trở lại thành dạng song song để giao tiếp với các thiết bị điều khiển.

Dữ liệu truyền qua Uart sẽ đóng thành các gói (packet). Mỗi gói dữ liệu chứa 1 bit bắt đầu, 5 – 9 bit dữ liệu (tùy thuộc vào bộ Uart), 1 bit chẵn lẻ tùy chọn và 1 bit hoặc 2 bit dừng.

Quá trình truyền dữ liệu Uart sẽ diễn ra dưới dạng các gói dữ liệu này, bắt đầu bằng 1 bit bắt đầu, đường mức cao được kéo dần xuống thấp. Sau bit bắt đầu là 5 – 9 bit dữ liệu truyền trong khung dữ liệu của gói, theo sau là bit chẵn lẻ tùy chọn để nhằm xác minh việc truyền dữ liệu thích hợp. Sau cùng, 1 hoặc nhiều bit dừng sẽ được truyền ở nơi đường đặt tại mức cao. Vậy là sẽ kết thúc việc truyền đi một gói dữ liệu

Ưu điểm và nhược điểm của giao tiếp Uart

Ưu điểm

  • Chỉ cần dùng 2 dây truyền dữ liệu
  • Không cần đến tín hiệu clock
  • Có 2 bit chẵn lẻ nên có thể kiểm tra lỗi dễ dàng
  • Cấu trúc gói dữ liệu có thể thay đổi được miễn là cả 2 bên đều được thiết lập để giao tiếp với nhau
  • Phương pháp giao tiếp Uart có nhiều tài liệu hướng dẫn và cũng là bộ truyền dữ liệu đang được sử dụng rộng rãi hiện nay

Nhược điểm

  • Kích thước của khung dữ liệu giới hạn tối đa là 9 bit, khá nhỏ so với nhu cầu sử dụng
  • Không được hỗ trợ nhiều hệ thống master và slave
  • Tốc độ truyền của mỗi giao tiếp Uart phải nằm trong khoảng 10% của nhau

Ứng dụng của giao tiếp UART

Ta có thể kể đến một số ứng dụng cơ bản như:

  • Kết nối thiết bị điện tử với máy tính: chẳng hạn như vi điều khiển, cảm biến, màn hình hiển thị, máy in và các thiết bị khác. Khi được kết nối với máy tính, các thiết bị này có thể gửi và nhận dữ liệu thông qua cổng giao tiếp UART.
  • Giao tiếp giữa các vi điều khiển: Các vi điều khiển này có thể truyền và nhận dữ liệu để thực hiện các tác vụ như điều khiển động cơ, đo lường và kiểm soát các thông số, và điều khiển các thiết bị khác.
  • Giao tiếp không dây: Giao thức UART có thể được sử dụng để giao tiếp không dây giữa các thiết bị, chẳng hạn như các thiết bị Bluetooth hoặc Wi-Fi. Trong trường hợp này, các dữ liệu được truyền qua sóng radio hoặc sóng vô tuyến.
  • Điều khiển robot: Các thiết bị như bộ điều khiển và các mô-đun điều khiển robot có thể sử dụng giao thức UART để gửi và nhận dữ liệu từ nhau.
  • Hệ thống đo lường: Giao thức UART có thể được sử dụng để kết nối các thiết bị đo lường với các thiết bị khác, chẳng hạn như máy tính hoặc các thiết bị nhúng. Các thiết bị đo lường có thể gửi dữ liệu về các thông số đo được thông qua cổng UART, và thiết bị nhận có thể hiển thị hoặc xử lý dữ liệu này.

Trên đây là những tìm hiểu cơ bản của BKAII về truyền thông UART, có thắc mắc hay cần thêm thông tin các bạn liên hệ BKAII nhé!

Xem thêm:

"BKAII - Thiết bị truyền thông TỐT nhất với giá CẠNH TRANH nhất!"


 
 

Số lượng người đang truy cập...

Không thể hiển thị dữ liệu người dùng trực tuyến vào lúc này.

 
We are offline - Send us an email
Sorry, we are not online at the moment. Leave a message and we will get back to you.
Please give us some info to serve you better.
×
File size larger than 50 Mb
×
File type not allowed
Send chat transcript to your email:
×
Transcript sent!
Are you sure you want to close this chat?
Thank you. We would appreciate it if you could rate this chat

No, thanks
36.756MBMemory Usage508msRequest Duration
Joomla! Version4.4.13
PHP Version8.1.29
Identityguest
Response200
Templatet3_bs3_blank
Database
Server
mysql
Version
10.11.8-MariaDB
Collation
latin1_swedish_ci
Conn Collation
utf8mb4_general_ci
$_GET
array:1 [ "srsltid" => "AfmBOoqrd_BVRggnQZCdhSQMz6KiBv6a28qr-7CV9eq0gKT7lXcWbiGV" ]
$_POST
[]
$_SESSION
array:1 [ "joomla" => "***redacted***" ]
$_COOKIE
[]
$_SERVER
array:50 [ "PATH" => "/usr/local/bin:/bin:/usr/bin" "HTTP_ACCEPT" => "text/html,application/xhtm...
session
array:3 [ "counter" => 1 "timer" => array:3 [ "start" => 1748984171 "last" => 1748984171...
registry
array:3 [ "data" => array:3 [ "current_theme" => "red" "current_direction" => "ltr" "c...
user
array:18 [ "id" => 0 "name" => null "username" => null "email" => null "password" => "***r...
  • afterLoad (4.1MB) (27.6ms)
  • afterInitialise (7.13MB) (64.06ms)
  • afterRoute (4.35MB) (68.4ms)
  • beforeRenderComponent com_content (380.19KB) (3.75ms)
  • Before Access::preloadComponents (all components) (477.52KB) (4.05ms)
  • After Access::preloadComponents (all components) (121.71KB) (836μs)
  • Before Access::preloadPermissions (com_content) (4.07KB) (25μs)
  • After Access::preloadPermissions (com_content) (1.09MB) (3.49ms)
  • Before Access::getAssetRules (id:1281 name:com_content.article.1099) (66.8KB) (67μs)
  • After Access::getAssetRules (id:1281 name:com_content.article.1099) (26.37KB) (370μs)
  • afterRenderComponent com_content (2.8MB) (39.23ms)
  • afterDispatch (2.33KB) (147μs)
  • beforeRenderModule mod_custom ( Mạng xã hội & Thống kê truy cập) (1.84MB) (23.37ms)
  • afterRenderRawModule mod_custom ( Mạng xã hội & Thống kê truy cập) (35.91KB) (1.38ms)
  • beforeRenderModule mod_custom ( Mạng xã hội & Thống kê truy cập) (752B) (8μs)
  • afterRenderModule mod_custom ( Mạng xã hội & Thống kê truy cập) (31.73KB) (415μs)
  • beforeRenderModule mod_custom (Công ty TNHH Tự động hóa và Tin học công nghiệp Bách Khoa (BKAII)) (1.01KB) (55μs)
  • afterRenderRawModule mod_custom (Công ty TNHH Tự động hóa và Tin học công nghiệp Bách Khoa (BKAII)) (2.22KB) (162μs)
  • beforeRenderModule mod_custom (Công ty TNHH Tự động hóa và Tin học công nghiệp Bách Khoa (BKAII)) (800B) (6μs)
  • afterRenderModule mod_custom (Công ty TNHH Tự động hóa và Tin học công nghiệp Bách Khoa (BKAII)) (2.09KB) (151μs)
  • beforeRenderModule mod_breadcrumbs (Breadcrumbs) (824B) (50μs)
  • afterRenderRawModule mod_breadcrumbs (Breadcrumbs) (36.7KB) (1.28ms)
  • beforeRenderModule mod_breadcrumbs (Breadcrumbs) (704B) (7μs)
  • afterRenderModule mod_breadcrumbs (Breadcrumbs) (2.7KB) (216μs)
  • beforeRenderModule mod_whosonline (Số lượng người đang truy cập...) (760B) (55μs)
  • afterRenderRawModule mod_whosonline (Số lượng người đang truy cập...) (9.6KB) (670μs)
  • beforeRenderModule mod_whosonline (Số lượng người đang truy cập...) (752B) (6μs)
  • afterRenderModule mod_whosonline (Số lượng người đang truy cập...) (1.98KB) (155μs)
  • beforeRenderModule mod_articles_latest (Bài viết mới cập nhật...) (520B) (51μs)
  • afterRenderRawModule mod_articles_latest (Bài viết mới cập nhật...) (217.18KB) (84.19ms)
  • beforeRenderModule mod_articles_latest (Bài viết mới cập nhật...) (736B) (12μs)
  • afterRenderModule mod_articles_latest (Bài viết mới cập nhật...) (1.8KB) (205μs)
  • beforeRenderModule mod_menu (Main Menu) (2.13KB) (71μs)
  • afterRenderRawModule mod_menu (Main Menu) (9.1MB) (58.35ms)
  • beforeRenderModule mod_menu (Main Menu) (704B) (12μs)
  • afterRenderModule mod_menu (Main Menu) (1.84KB) (224μs)
  • beforeRenderModule mod_articles_categories (Demo Categories) (1.48KB) (35μs)
  • afterRenderRawModule mod_articles_categories (Demo Categories) (66.68KB) (2.07ms)
  • beforeRenderModule mod_articles_categories (Demo Categories) (720B) (8μs)
  • afterRenderModule mod_articles_categories (Demo Categories) (1.78KB) (182μs)
  • beforeRenderModule mod_finder (Smart Search Module) (344B) (68μs)
  • afterRenderRawModule mod_finder (Smart Search Module) (454.68KB) (8.21ms)
  • beforeRenderModule mod_finder (Smart Search Module) (720B) (7μs)
  • afterRenderModule mod_finder (Smart Search Module) (1.73KB) (163μs)
  • afterRender (3.58MB) (113ms)
  • 1 x afterRender (3.58MB) (22.23%)
    112.96ms
    1 x afterRenderRawModule mod_articles_latest (Bài viết mới cập nhật...) (217.18KB) (16.57%)
    84.19ms
    1 x afterRoute (4.35MB) (13.46%)
    68.40ms
    1 x afterInitialise (7.13MB) (12.61%)
    64.06ms
    1 x afterRenderRawModule mod_menu (Main Menu) (9.1MB) (11.48%)
    58.35ms
    1 x afterRenderComponent com_content (2.8MB) (7.72%)
    39.23ms
    1 x afterLoad (4.1MB) (5.43%)
    27.60ms
    1 x beforeRenderModule mod_custom ( Mạng xã hội & Thống kê truy cập) (1.84MB) (4.6%)
    23.37ms
    1 x afterRenderRawModule mod_finder (Smart Search Module) (454.68KB) (1.62%)
    8.21ms
    1 x Before Access::preloadComponents (all components) (477.52KB) (0.8%)
    4.05ms
    1 x beforeRenderComponent com_content (380.19KB) (0.74%)
    3.75ms
    1 x After Access::preloadPermissions (com_content) (1.09MB) (0.69%)
    3.49ms
    1 x afterRenderRawModule mod_articles_categories (Demo Categories) (66.68KB) (0.41%)
    2.07ms
    1 x afterRenderRawModule mod_custom ( Mạng xã hội & Thống kê truy cập) (35.91KB) (0.27%)
    1.38ms
    1 x afterRenderRawModule mod_breadcrumbs (Breadcrumbs) (36.7KB) (0.25%)
    1.28ms
    1 x After Access::preloadComponents (all components) (121.71KB) (0.16%)
    836μs
    1 x afterRenderRawModule mod_whosonline (Số lượng người đang truy cập...) (9.6KB) (0.13%)
    670μs
    1 x afterRenderModule mod_custom ( Mạng xã hội & Thống kê truy cập) (31.73KB) (0.08%)
    415μs
    1 x After Access::getAssetRules (id:1281 name:com_content.article.1099) (26.37KB) (0.07%)
    370μs
    1 x afterRenderModule mod_menu (Main Menu) (1.84KB) (0.04%)
    224μs
    1 x afterRenderModule mod_breadcrumbs (Breadcrumbs) (2.7KB) (0.04%)
    216μs
    1 x afterRenderModule mod_articles_latest (Bài viết mới cập nhật...) (1.8KB) (0.04%)
    205μs
    1 x afterRenderModule mod_articles_categories (Demo Categories) (1.78KB) (0.04%)
    182μs
    1 x afterRenderModule mod_finder (Smart Search Module) (1.73KB) (0.03%)
    163μs
    1 x afterRenderRawModule mod_custom (Công ty TNHH Tự động hóa và Tin học công nghiệp Bách Khoa (BKAII)) (2.22KB) (0.03%)
    162μs
    1 x afterRenderModule mod_whosonline (Số lượng người đang truy cập...) (1.98KB) (0.03%)
    155μs
    1 x afterRenderModule mod_custom (Công ty TNHH Tự động hóa và Tin học công nghiệp Bách Khoa (BKAII)) (2.09KB) (0.03%)
    151μs
    1 x afterDispatch (2.33KB) (0.03%)
    147μs
    1 x beforeRenderModule mod_menu (Main Menu) (2.13KB) (0.01%)
    71μs
    1 x beforeRenderModule mod_finder (Smart Search Module) (344B) (0.01%)
    68μs
    1 x Before Access::getAssetRules (id:1281 name:com_content.article.1099) (66.8KB) (0.01%)
    67μs
    1 x beforeRenderModule mod_custom (Công ty TNHH Tự động hóa và Tin học công nghiệp Bách Khoa (BKAII)) (1.01KB) (0.01%)
    55μs
    1 x beforeRenderModule mod_whosonline (Số lượng người đang truy cập...) (760B) (0.01%)
    55μs
    1 x beforeRenderModule mod_articles_latest (Bài viết mới cập nhật...) (520B) (0.01%)
    51μs
    1 x beforeRenderModule mod_breadcrumbs (Breadcrumbs) (824B) (0.01%)
    50μs
    1 x beforeRenderModule mod_articles_categories (Demo Categories) (1.48KB) (0.01%)
    35μs
    1 x Before Access::preloadPermissions (com_content) (4.07KB) (0%)
    25μs
    1 x beforeRenderModule mod_articles_latest (Bài viết mới cập nhật...) (736B) (0%)
    12μs
    1 x beforeRenderModule mod_menu (Main Menu) (704B) (0%)
    12μs
    1 x beforeRenderModule mod_custom ( Mạng xã hội & Thống kê truy cập) (752B) (0%)
    8μs
    1 x beforeRenderModule mod_articles_categories (Demo Categories) (720B) (0%)
    8μs
    1 x beforeRenderModule mod_finder (Smart Search Module) (720B) (0%)
    7μs
    1 x beforeRenderModule mod_breadcrumbs (Breadcrumbs) (704B) (0%)
    7μs
    1 x beforeRenderModule mod_custom (Công ty TNHH Tự động hóa và Tin học công nghiệp Bách Khoa (BKAII)) (800B) (0%)
    6μs
    1 x beforeRenderModule mod_whosonline (Số lượng người đang truy cập...) (752B) (0%)
    6μs
40 statements were executed, 11 of which were duplicates, 29 unique103ms3.09MB
  • SELECT @@SESSION.sql_mode;70μs1.57KB/libraries/vendor/joomla/database/src/Mysqli/MysqliDriver.php:334Copy
  • SELECT `data` FROM `idc_session` WHERE `session_id` = ?107μs1.61KBParams/libraries/vendor/joomla/session/src/Handler/DatabaseHandler.php:261Copy
  • SELECT `extension_id` AS `id`,`element` AS `option`,`params`,`enabled` FROM `idc_extensions` WHERE `type` = 'component' AND `state` = 0 AND `enabled` = 1297μs1.73KB/libraries/src/Component/ComponentHelper.php:399Copy
  • SELECT `id`,`rules` FROM `idc_viewlevels`84μs976B/libraries/src/Access/Access.php:955Copy
  • SELECT `b`.`id` FROM `idc_usergroups` AS `a` LEFT JOIN `idc_usergroups` AS `b` ON `b`.`lft` <= `a`.`lft` AND `b`.`rgt` >= `a`.`rgt` WHERE `a`.`id` = :guest134μs2.27KBParams/libraries/src/Access/Access.php:868Copy
  • SELECT `folder` AS `type`,`element` AS `name`,`params` AS `params`,`extension_id` AS `id` FROM `idc_extensions` WHERE `enabled` = 1 AND `type` = 'plugin' AND `state` IN (0,1) AND `access` IN (:preparedArray1,:preparedArray2) ORDER BY `ordering`574μs4.3KBParams/libraries/src/Plugin/PluginHelper.php:294Copy
  • SELECT `m`.`id`,`m`.`menutype`,`m`.`title`,`m`.`alias`,`m`.`note`,`m`.`link`,`m`.`type`,`m`.`level`,`m`.`language`,`m`.`browserNav`,`m`.`access`,`m`.`params`,`m`.`home`,`m`.`img`,`m`.`template_style_id`,`m`.`component_id`,`m`.`parent_id`,`m`.`path` AS `route`,`e`.`element` AS `component` FROM `idc_menu` AS `m` LEFT JOIN `idc_extensions` AS `e` ON `m`.`component_id` = `e`.`extension_id` WHERE ( (`m`.`published` = 1 AND `m`.`parent_id` > 0 AND `m`.`client_id` = 0) AND (`m`.`publish_up` IS NULL OR `m`.`publish_up` <= :currentDate1)) AND (`m`.`publish_down` IS NULL OR `m`.`publish_down` >= :currentDate2) ORDER BY `m`.`lft`4.65ms820.55KBParams/libraries/src/Menu/SiteMenu.php:166Copy
  • SELECT `c`.`id`,`c`.`asset_id`,`c`.`access`,`c`.`alias`,`c`.`checked_out`,`c`.`checked_out_time`,`c`.`created_time`,`c`.`created_user_id`,`c`.`description`,`c`.`extension`,`c`.`hits`,`c`.`language`,`c`.`level`,`c`.`lft`,`c`.`metadata`,`c`.`metadesc`,`c`.`metakey`,`c`.`modified_time`,`c`.`note`,`c`.`params`,`c`.`parent_id`,`c`.`path`,`c`.`published`,`c`.`rgt`,`c`.`title`,`c`.`modified_user_id`,`c`.`version`, CASE WHEN CHAR_LENGTH(`c`.`alias`) != 0 THEN CONCAT_WS(':', `c`.`id`, `c`.`alias`) ELSE `c`.`id` END as `slug` FROM `idc_categories` AS `s` INNER JOIN `idc_categories` AS `c` ON (`s`.`lft` <= `c`.`lft` AND `c`.`lft` < `s`.`rgt`) OR (`c`.`lft` < `s`.`lft` AND `s`.`rgt` < `c`.`rgt`) WHERE (`c`.`extension` = :extension OR `c`.`extension` = 'system') AND `c`.`published` = 1 AND `s`.`id` = :id ORDER BY `c`.`lft`335μs5.13KBParams/libraries/src/Categories/Categories.php:375Copy
  • SELECT `id`,`home`,`template`,`s`.`params`,`inheritable`,`parent` FROM `idc_template_styles` AS `s` LEFT JOIN `idc_extensions` AS `e` ON `e`.`element` = `s`.`template` AND `e`.`type` = 'template' AND `e`.`client_id` = `s`.`client_id` WHERE `s`.`client_id` = 0 AND `e`.`enabled` = 1232μs2.45KB/administrator/components/com_templates/src/Model/StyleModel.php:773Copy
  • SELECT * FROM `idc_languages` WHERE `published` = 1 ORDER BY `ordering` ASC149μs2.22KB/libraries/src/Language/LanguageHelper.php:142Copy
  • SELECT `id`,`name`,`rules`,`parent_id` FROM `idc_assets` WHERE `name` IN (:preparedArray1,:preparedArray2,:preparedArray3,:preparedArray4,:preparedArray5,:preparedArray6,:preparedArray7,:preparedArray8,:preparedArray9,:preparedArray10,:preparedArray11,:preparedArray12,:preparedArray13,:preparedArray14,:preparedArray15,:preparedArray16,:preparedArray17,:preparedArray18,:preparedArray19,:preparedArray20,:preparedArray21,:preparedArray22,:preparedArray23,:preparedArray24,:preparedArray25,:preparedArray26,:preparedArray27,:preparedArray28,:preparedArray29,:preparedArray30,:preparedArray31,:preparedArray32,:preparedArray33,:preparedArray34,:preparedArray35,:preparedArray36,:preparedArray37,:preparedArray38,:preparedArray39,:preparedArray40,:preparedArray41,:preparedArray42,:preparedArray43,:preparedArray44)489μs8.12KBParams/libraries/src/Access/Access.php:357Copy
  • SELECT `id`,`name`,`rules`,`parent_id` FROM `idc_assets` WHERE `name` LIKE :asset OR `name` = :extension OR `parent_id` = 01.34ms173.8KBParams/libraries/src/Access/Access.php:301Copy
  • SHOW FULL COLUMNS FROM `idc_content`613μs2.39KB/libraries/vendor/joomla/database/src/Mysqli/MysqliDriver.php:625Copy
  • UPDATE `idc_content` SET `hits` = (`hits` + 1) WHERE `id` = '1099'290μs48B/libraries/src/Table/Table.php:1325Copy
  • SELECT `a`.`id`,`a`.`asset_id`,`a`.`title`,`a`.`alias`,`a`.`introtext`,`a`.`fulltext`,`a`.`state`,`a`.`catid`,`a`.`created`,`a`.`created_by`,`a`.`created_by_alias`,`a`.`modified`,`a`.`modified_by`,`a`.`checked_out`,`a`.`checked_out_time`,`a`.`publish_up`,`a`.`publish_down`,`a`.`images`,`a`.`urls`,`a`.`attribs`,`a`.`version`,`a`.`ordering`,`a`.`metakey`,`a`.`metadesc`,`a`.`access`,`a`.`hits`,`a`.`metadata`,`a`.`featured`,`a`.`language`,`fp`.`featured_up`,`fp`.`featured_down`,`c`.`title` AS `category_title`,`c`.`alias` AS `category_alias`,`c`.`access` AS `category_access`,`c`.`language` AS `category_language`,`fp`.`ordering`,`u`.`name` AS `author`,`parent`.`title` AS `parent_title`,`parent`.`id` AS `parent_id`,`parent`.`path` AS `parent_route`,`parent`.`alias` AS `parent_alias`,`parent`.`language` AS `parent_language`,ROUND(`v`.`rating_sum` / `v`.`rating_count`, 1) AS `rating`,`v`.`rating_count` AS `rating_count` FROM `idc_content` AS `a` INNER JOIN `idc_categories` AS `c` ON `c`.`id` = `a`.`catid` LEFT JOIN `idc_content_frontpage` AS `fp` ON `fp`.`content_id` = `a`.`id` LEFT JOIN `idc_users` AS `u` ON `u`.`id` = `a`.`created_by` LEFT JOIN `idc_categories` AS `parent` ON `parent`.`id` = `c`.`parent_id` LEFT JOIN `idc_content_rating` AS `v` ON `a`.`id` = `v`.`content_id` WHERE ( (`a`.`id` = :pk AND `c`.`published` > 0) AND (`a`.`publish_up` IS NULL OR `a`.`publish_up` <= :publishUp)) AND (`a`.`publish_down` IS NULL OR `a`.`publish_down` >= :publishDown) AND `a`.`state` IN (:preparedArray1,:preparedArray2)348μs24.63KBParams/components/com_content/src/Model/ArticleModel.php:215Copy
  • SELECT `c`.`id`,`c`.`asset_id`,`c`.`access`,`c`.`alias`,`c`.`checked_out`,`c`.`checked_out_time`,`c`.`created_time`,`c`.`created_user_id`,`c`.`description`,`c`.`extension`,`c`.`hits`,`c`.`language`,`c`.`level`,`c`.`lft`,`c`.`metadata`,`c`.`metadesc`,`c`.`metakey`,`c`.`modified_time`,`c`.`note`,`c`.`params`,`c`.`parent_id`,`c`.`path`,`c`.`published`,`c`.`rgt`,`c`.`title`,`c`.`modified_user_id`,`c`.`version`, CASE WHEN CHAR_LENGTH(`c`.`alias`) != 0 THEN CONCAT_WS(':', `c`.`id`, `c`.`alias`) ELSE `c`.`id` END as `slug` FROM `idc_categories` AS `s` INNER JOIN `idc_categories` AS `c` ON (`s`.`lft` <= `c`.`lft` AND `c`.`lft` < `s`.`rgt`) OR (`c`.`lft` < `s`.`lft` AND `s`.`rgt` < `c`.`rgt`) WHERE (`c`.`extension` = :extension OR `c`.`extension` = 'system') AND `c`.`access` IN (:preparedArray1,:preparedArray2) AND `c`.`published` = 1 AND `s`.`id` = :id ORDER BY `c`.`lft`290μs5.17KBParams/libraries/src/Categories/Categories.php:375Copy
  • SELECT `m`.`tag_id`,`t`.* FROM `idc_contentitem_tag_map` AS `m` INNER JOIN `idc_tags` AS `t` ON `m`.`tag_id` = `t`.`id` WHERE `m`.`type_alias` = :contentType AND `m`.`content_item_id` = :id AND `t`.`published` = 1 AND `t`.`access` IN (:preparedArray1,:preparedArray2)216μs7.72KBParams/libraries/src/Helper/TagsHelper.php:388Copy
  • SELECT `c`.`id`,`c`.`asset_id`,`c`.`access`,`c`.`alias`,`c`.`checked_out`,`c`.`checked_out_time`,`c`.`created_time`,`c`.`created_user_id`,`c`.`description`,`c`.`extension`,`c`.`hits`,`c`.`language`,`c`.`level`,`c`.`lft`,`c`.`metadata`,`c`.`metadesc`,`c`.`metakey`,`c`.`modified_time`,`c`.`note`,`c`.`params`,`c`.`parent_id`,`c`.`path`,`c`.`published`,`c`.`rgt`,`c`.`title`,`c`.`modified_user_id`,`c`.`version`, CASE WHEN CHAR_LENGTH(`c`.`alias`) != 0 THEN CONCAT_WS(':', `c`.`id`, `c`.`alias`) ELSE `c`.`id` END as `slug` FROM `idc_categories` AS `s` INNER JOIN `idc_categories` AS `c` ON (`s`.`lft` <= `c`.`lft` AND `c`.`lft` < `s`.`rgt`) OR (`c`.`lft` < `s`.`lft` AND `s`.`rgt` < `c`.`rgt`) WHERE (`c`.`extension` = :extension OR `c`.`extension` = 'system') AND `c`.`access` IN (:preparedArray1,:preparedArray2) AND `c`.`published` = 1 AND `s`.`id` = :id ORDER BY `c`.`lft`270μs5.17KBParams/libraries/src/Categories/Categories.php:375Copy
  • SELECT DISTINCT a.id, a.title, a.name, a.checked_out, a.checked_out_time, a.note, a.state, a.access, a.created_time, a.created_user_id, a.ordering, a.language, a.fieldparams, a.params, a.type, a.default_value, a.context, a.group_id, a.label, a.description, a.required, a.only_use_in_subform,l.title AS language_title, l.image AS language_image,uc.name AS editor,ag.title AS access_level,ua.name AS author_name,g.title AS group_title, g.access as group_access, g.state AS group_state, g.note as group_note FROM idc_fields AS a LEFT JOIN `idc_languages` AS l ON l.lang_code = a.language LEFT JOIN idc_users AS uc ON uc.id=a.checked_out LEFT JOIN idc_viewlevels AS ag ON ag.id = a.access LEFT JOIN idc_users AS ua ON ua.id = a.created_user_id LEFT JOIN idc_fields_groups AS g ON g.id = a.group_id LEFT JOIN `idc_fields_categories` AS fc ON fc.field_id = a.id WHERE ( (`a`.`context` = :context AND (`fc`.`category_id` IS NULL OR `fc`.`category_id` IN (:preparedArray1,:preparedArray2,:preparedArray3)) AND `a`.`access` IN (:preparedArray4,:preparedArray5)) AND (`a`.`group_id` = 0 OR `g`.`access` IN (:preparedArray6,:preparedArray7)) AND `a`.`state` = :state) AND (`a`.`group_id` = 0 OR `g`.`state` = :gstate) AND `a`.`only_use_in_subform` = :only_use_in_subform ORDER BY a.ordering ASC854μs6.06KBParams/libraries/src/MVC/Model/BaseDatabaseModel.php:166Copy
  • SELECT `a`.`id`,`a`.`title`,`a`.`catid`,`a`.`language`, CASE WHEN CHAR_LENGTH(`a`.`alias`) != 0 THEN CONCAT_WS(':', `a`.`id`, `a`.`alias`) ELSE a.id END AS `slug`, CASE WHEN CHAR_LENGTH(`cc`.`alias`) != 0 THEN CONCAT_WS(':', `cc`.`id`, `cc`.`alias`) ELSE cc.id END AS `catslug` FROM `idc_content` AS `a` LEFT JOIN `idc_categories` AS `cc` ON `cc`.`id` = `a`.`catid` WHERE `a`.`catid` = :catid AND `a`.`state` = :state AND `a`.`access` IN (:preparedArray1,:preparedArray2) AND (`publish_up` IS NULL OR `publish_up` <= :nowDate1) AND (`publish_down` IS NULL OR `publish_down` >= :nowDate2) ORDER BY CASE WHEN `a`.`publish_up` IS NULL THEN `a`.`created` ELSE `a`.`publish_up` END DESC7.93ms246.03KBParams/plugins/content/pagenavigation/src/Extension/PageNavigation.php:188Copy
  • SELECT `c`.`id`,`c`.`asset_id`,`c`.`access`,`c`.`alias`,`c`.`checked_out`,`c`.`checked_out_time`,`c`.`created_time`,`c`.`created_user_id`,`c`.`description`,`c`.`extension`,`c`.`hits`,`c`.`language`,`c`.`level`,`c`.`lft`,`c`.`metadata`,`c`.`metadesc`,`c`.`metakey`,`c`.`modified_time`,`c`.`note`,`c`.`params`,`c`.`parent_id`,`c`.`path`,`c`.`published`,`c`.`rgt`,`c`.`title`,`c`.`modified_user_id`,`c`.`version`, CASE WHEN CHAR_LENGTH(`c`.`alias`) != 0 THEN CONCAT_WS(':', `c`.`id`, `c`.`alias`) ELSE `c`.`id` END as `slug` FROM `idc_categories` AS `s` INNER JOIN `idc_categories` AS `c` ON (`s`.`lft` <= `c`.`lft` AND `c`.`lft` < `s`.`rgt`) OR (`c`.`lft` < `s`.`lft` AND `s`.`rgt` < `c`.`rgt`) WHERE (`c`.`extension` = :extension OR `c`.`extension` = 'system') AND `c`.`access` IN (:preparedArray1,:preparedArray2) AND `c`.`published` = 1 AND `s`.`id` = :id ORDER BY `c`.`lft`287μs5.17KBParams/libraries/src/Categories/Categories.php:375Copy
  • SELECT `m`.`id`,`m`.`title`,`m`.`module`,`m`.`position`,`m`.`content`,`m`.`showtitle`,`m`.`params`,`mm`.`menuid` FROM `idc_modules` AS `m` LEFT JOIN `idc_modules_menu` AS `mm` ON `mm`.`moduleid` = `m`.`id` LEFT JOIN `idc_extensions` AS `e` ON `e`.`element` = `m`.`module` AND `e`.`client_id` = `m`.`client_id` WHERE ( ( (`m`.`published` = 1 AND `e`.`enabled` = 1 AND `m`.`client_id` = :clientId AND `m`.`access` IN (:preparedArray1,:preparedArray2)) AND (`m`.`publish_up` IS NULL OR `m`.`publish_up` <= :publishUp)) AND (`m`.`publish_down` IS NULL OR `m`.`publish_down` >= :publishDown)) AND (`mm`.`menuid` = :itemId OR `mm`.`menuid` <= 0) ORDER BY `m`.`position`,`m`.`ordering`2ms1.36MBParams/libraries/src/Cache/Controller/CallbackController.php:51Copy
  • SELECT `a`.`id`,`a`.`title`,`a`.`alias`,`a`.`introtext`,`a`.`fulltext`,`a`.`checked_out`,`a`.`checked_out_time`,`a`.`catid`,`a`.`created`,`a`.`created_by`,`a`.`created_by_alias`,`a`.`modified`,`a`.`modified_by`,CASE WHEN `a`.`publish_up` IS NULL THEN `a`.`created` ELSE `a`.`publish_up` END AS `publish_up`,`a`.`publish_down`,`a`.`images`,`a`.`urls`,`a`.`attribs`,`a`.`metadata`,`a`.`metakey`,`a`.`metadesc`,`a`.`access`,`a`.`hits`,`a`.`featured`,`a`.`language`,LENGTH(`a`.`fulltext`) AS `readmore`,`a`.`ordering`,`fp`.`featured_up`,`fp`.`featured_down`,CASE WHEN `c`.`published` = 2 AND `a`.`state` > 0 THEN 2 WHEN `c`.`published` != 1 THEN 0 ELSE `a`.`state` END AS `state`,`c`.`title` AS `category_title`,`c`.`path` AS `category_route`,`c`.`access` AS `category_access`,`c`.`alias` AS `category_alias`,`c`.`language` AS `category_language`,`c`.`published`,`c`.`published` AS `parents_published`,`c`.`lft`,CASE WHEN `a`.`created_by_alias` > ' ' THEN `a`.`created_by_alias` ELSE `ua`.`name` END AS `author`,`ua`.`email` AS `author_email`,`uam`.`name` AS `modified_by_name`,`parent`.`title` AS `parent_title`,`parent`.`id` AS `parent_id`,`parent`.`path` AS `parent_route`,`parent`.`alias` AS `parent_alias`,`parent`.`language` AS `parent_language`,COALESCE(NULLIF(ROUND(`v`.`rating_sum` / `v`.`rating_count`, 1), 0), 0) AS `rating`,COALESCE(NULLIF(`v`.`rating_count`, 0), 0) AS `rating_count` FROM `idc_content` AS `a` LEFT JOIN `idc_categories` AS `c` ON `c`.`id` = `a`.`catid` LEFT JOIN `idc_users` AS `ua` ON `ua`.`id` = `a`.`created_by` LEFT JOIN `idc_users` AS `uam` ON `uam`.`id` = `a`.`modified_by` LEFT JOIN `idc_categories` AS `parent` ON `parent`.`id` = `c`.`parent_id` LEFT JOIN `idc_content_frontpage` AS `fp` ON `fp`.`content_id` = `a`.`id` LEFT JOIN `idc_content_rating` AS `v` ON `a`.`id` = `v`.`content_id` WHERE `a`.`access` IN (:preparedArray1,:preparedArray2) AND `c`.`access` IN (:preparedArray3,:preparedArray4) AND `c`.`published` = 1 AND `a`.`state` = :condition AND (`a`.`publish_up` IS NULL OR `a`.`publish_up` <= :publishUp) AND (`a`.`publish_down` IS NULL OR `a`.`publish_down` >= :publishDown) ORDER BY a.created DESC LIMIT 1578.31ms249.09KBParams/libraries/src/MVC/Model/BaseDatabaseModel.php:166Copy
  • SELECT `c`.`id`,`c`.`asset_id`,`c`.`access`,`c`.`alias`,`c`.`checked_out`,`c`.`checked_out_time`,`c`.`created_time`,`c`.`created_user_id`,`c`.`description`,`c`.`extension`,`c`.`hits`,`c`.`language`,`c`.`level`,`c`.`lft`,`c`.`metadata`,`c`.`metadesc`,`c`.`metakey`,`c`.`modified_time`,`c`.`note`,`c`.`params`,`c`.`parent_id`,`c`.`path`,`c`.`published`,`c`.`rgt`,`c`.`title`,`c`.`modified_user_id`,`c`.`version`, CASE WHEN CHAR_LENGTH(`c`.`alias`) != 0 THEN CONCAT_WS(':', `c`.`id`, `c`.`alias`) ELSE `c`.`id` END as `slug` FROM `idc_categories` AS `s` INNER JOIN `idc_categories` AS `c` ON (`s`.`lft` <= `c`.`lft` AND `c`.`lft` < `s`.`rgt`) OR (`c`.`lft` < `s`.`lft` AND `s`.`rgt` < `c`.`rgt`) WHERE (`c`.`extension` = :extension OR `c`.`extension` = 'system') AND `c`.`access` IN (:preparedArray1,:preparedArray2) AND `c`.`published` = 1 AND `s`.`id` = :id ORDER BY `c`.`lft`384μs5.17KBParams/libraries/src/Categories/Categories.php:375Copy
  • SELECT * FROM idc_hikashop_config371μs152.94KB/administrator/components/com_hikashop/classes/config.php:16Copy
  • SET sql_mode=(SELECT REPLACE(REPLACE(@@sql_mode,'ONLY_FULL_GROUP_BY',''), 'STRICT_TRANS_TABLES', ''));44μs0B/administrator/components/com_hikashop/helpers/helper.php:3422Copy
  • SELECT `c`.`id`,`c`.`asset_id`,`c`.`access`,`c`.`alias`,`c`.`checked_out`,`c`.`checked_out_time`,`c`.`created_time`,`c`.`created_user_id`,`c`.`description`,`c`.`extension`,`c`.`hits`,`c`.`language`,`c`.`level`,`c`.`lft`,`c`.`metadata`,`c`.`metadesc`,`c`.`metakey`,`c`.`modified_time`,`c`.`note`,`c`.`params`,`c`.`parent_id`,`c`.`path`,`c`.`published`,`c`.`rgt`,`c`.`title`,`c`.`modified_user_id`,`c`.`version`, CASE WHEN CHAR_LENGTH(`c`.`alias`) != 0 THEN CONCAT_WS(':', `c`.`id`, `c`.`alias`) ELSE `c`.`id` END as `slug` FROM `idc_categories` AS `s` INNER JOIN `idc_categories` AS `c` ON (`s`.`lft` <= `c`.`lft` AND `c`.`lft` < `s`.`rgt`) OR (`c`.`lft` < `s`.`lft` AND `s`.`rgt` < `c`.`rgt`) WHERE (`c`.`extension` = :extension OR `c`.`extension` = 'system') AND `c`.`access` IN (:preparedArray1,:preparedArray2) AND `c`.`published` = 1 AND `s`.`id` = :id ORDER BY `c`.`lft`395μs5.14KBParams/libraries/src/Categories/Categories.php:375Copy
  • SELECT `name`,`element` FROM `idc_extensions` WHERE `type` = 'plugin' AND `folder` = 'finder' AND `enabled` = 1325μs928B/administrator/components/com_finder/src/Helper/LanguageHelper.php:135Copy
  • SELECT `title` FROM `idc_finder_taxonomy` WHERE `parent_id` = 1 AND `state` = 1 AND `access` IN (1,5)145μs968B/administrator/components/com_finder/src/Indexer/Taxonomy.php:314Copy
  • SELECT SUM(CASE WHEN `a`.`next_execution` <= :now THEN 1 ELSE 0 END) AS due_count,SUM(CASE WHEN `a`.`locked` IS NULL THEN 0 ELSE 1 END) AS locked_count FROM `idc_scheduler_tasks` AS `a` WHERE `a`.`state` = 1151μs1.68KBParams/administrator/components/com_scheduler/src/Model/TasksModel.php:517Copy
  • SELECT `alias` FROM `idc_content` WHERE `id` = :id99μs1.63KBParams/components/com_content/src/Service/Router.php:168Copy
  • SELECT `alias` FROM `idc_content` WHERE `id` = :id78μs1.63KBParams/components/com_content/src/Service/Router.php:168Copy
  • SELECT `alias` FROM `idc_content` WHERE `id` = :id80μs12.63KBParams/components/com_content/src/Service/Router.php:168Copy
  • SELECT `alias` FROM `idc_content` WHERE `id` = :id76μs1.63KBParams/components/com_content/src/Service/Router.php:168Copy
  • SELECT `alias` FROM `idc_content` WHERE `id` = :id76μs1.63KBParams/components/com_content/src/Service/Router.php:168Copy
  • SELECT `alias` FROM `idc_content` WHERE `id` = :id72μs1.63KBParams/components/com_content/src/Service/Router.php:168Copy
  • SELECT `alias` FROM `idc_content` WHERE `id` = :id77μs1.63KBParams/components/com_content/src/Service/Router.php:168Copy
  • SELECT `alias` FROM `idc_content` WHERE `id` = :id72μs1.63KBParams/components/com_content/src/Service/Router.php:168Copy
  • SELECT `session_id` FROM `idc_session` WHERE `session_id` = ?86μs1.61KBParams/libraries/vendor/joomla/session/src/Handler/DatabaseHandler.php:291Copy
  • INSERT INTO `idc_session` (`data`,`time`,`session_id`) VALUES (?, ?, ?)266μs864BParams/libraries/vendor/joomla/session/src/Handler/DatabaseHandler.php:318Copy